経理の月末地獄、紙と手入力
カレンダーが25日を過ぎる頃です。オフィスには妙な緊張感が漂い始めます。他部署の皆さんは、定時になると帰宅されます。しかし、経理部門だけは空気が重くなります。机の上には、紙の領収書が山積みです。手書きの経費申請用紙も、大量にあります。これらと一つずつ、静かに向き合います。Excelへ打ち込む作業が、私たちを待っています。一行ずつデータを入力する作業です。10人分の交通費を転記するだけでも大変です。これには、膨大な時間がかかってしまいます。接待費などの入力も加わると絶望的です。月末の残業は、ほぼ確定してしまいます。
終わりの見えない手作業と焦燥感
手書きの数字は、判別が非常に困難です。読み取りにくい文字が、数多く存在します。「0」と「6」の見分けがつかないこともありました。勘定科目の間違いも、決して珍しくありません。本来は消耗品費で申請すべきものです。それが、接待交際費になることもありました。そんな例が、過去には少なくなかったのです。

ある時、営業部の鈴木さんから申請がありました。その内容には、非常に驚かされました。接待交際費の欄に、おかしな記載がありました。「ボールペン替芯 300円」と書かれていたのです。私はため息をつき、内線電話をかけました。しかし「今は商談中だ」と言われます。そのまま一方的に、電話を切られました。手元には、未処理のレシートが残っています。まだ30枚以上も、山積みになったままです。このままでは、締め日に間に合いません。そんな焦りで、胃が痛む思いを何度もしました。
積み重なる疲労と視力の限界
まず、手作業の転記はミスとの戦いです。終わりなき戦いのように、私は感じていました。パソコン画面のセルを、じっと目で追います。手元の紙を、何度も何度も見比べます。この往復運動を繰り返すと、目が疲れます。夕方には、目の焦点が合わなくなりました。体力的にも精神的にも、限界を感じる日々でした。
手入力経費精算の悪魔の仕組み
手入力の経費精算は、不合理な仕組みです。誰も得をすることのないシステムだからです。経理が苦しんでいるのは、氷山の一角です。現場の申請者側にも、大きな負担があります。目に見えない隠れコストが発生しています。まず、紙に詳細を一生懸命に書き込みます。次に、のりでレシートを丁寧に貼ります。その後、経理の机まで歩いて提出します。不備があれば、電話で呼び出されます。そして、何度も書き直しを要求されるのです。
現場を疲弊させるアナログな申請フロー
申請者は、何度も同じ作業を繰り返します。経理へ向かう時間も、無駄に消費されます。修正のたびに、モチベーションも下がります。このような古い仕組みが、社内に残っています。これを変える必要性を、強く感じていました。非効率な作業が、社員の時間を奪っています。会社全体として、大きな損失だと言えます。
ダブルコスト構造と勘定科目の壁
これこそが、ダブルコスト構造の正体です。申請者側の小さなミスが、火種となります。それが、大きな問題へと発展するのです。経理側において、業務の遅延を招きます。特に、交通費や接待費は鬼門と言えます。消耗品費を合わせた3つは、判断が困難です。迷う申請者が続出する科目だからです。非常に扱いの難しい勘定科目と言えます。タクシー代を交通費に入れるべきか悩みます。あるいは、接待交際費にすべきか迷います。現場のスタッフが悩む時間は、数分間です。さらに、経理が訂正する時間は数十分です。この不毛なやり取りを、根絶したいと考えました。ルールを教えるだけでは、解決になりません。システム側で、入力を制限するしかありません。
Googleフォームで申請ミス防止と効率化
入力段階でのエラーを、物理的に防ぎます。そのための第一歩が、Googleフォームです。誰もが使い慣れている点を重視しました。これで紙の申請書を、完全に廃止しました。すべてのデータを、共通の入り口から集めます。設定したフィールドは、全部で5つです。「日付」と「勘定科目」を設定しました。「精算金額」と「支払先・内容」も設けます。最後に「領収書画像」の項目を追加しました。

勘定科目は、選択式に変更しました。プルダウン形式にしたのには、理由があります。自由入力欄は、ミスの温床になりがちです。全角や半角の混在が、頻繁に起こります。謎の独自科目が生まれることもありました。単なる変換ミスも、無視できない数でした。これらを、選択肢の固定でブロックしました。スマートフォンからも、簡単に入力できます。外回りの営業スタッフにも、非常に好評でした。移動中の電車内でも、すぐに作業ができます。レシートを撮り、その場で送信するだけです。わずか30秒で、申請が完了する体験です。彼らに「後回しの理由」を与えませんでした。入力のハードルを下げる工夫を行いました。結果的に、提出遅れを防ぐ有効な手段です。
スマートな申請体験による意識の変化
操作が簡単になると、申請も早まります。溜め込む人が、劇的に少なくなりました。入力画面がシンプルなことも、成功の要因です。直感的に操作できる設計を目指しました。その結果、教育の手間も省けました。導入初日から、スムーズに運用できました。システム化の効果を、すぐに実感できました。
フォームデータ、GASで経理自動化
集めたデータを、帳簿へ落とし込みます。ここで、Google Apps Scriptを使います。スプレッドシートの裏で、プログラムを動かします。データを受信した瞬間に、処理が実行されます。「onFormSubmit」という機能を使いました。これは、送信を検知するトリガーです。指定したコードを、自動で起動させます。送信された回答から、必要な情報を得ます。日付や勘定科目などの、重要なデータです。それらを集計シートへ、自動で書き込みます。シートの末尾に、新しい行が追加されます。人間の手を介さず、処理が進んでいきます。
初めてのスクリプト実行と緊張の瞬間
プログラムが動く瞬間は、いつも緊張します。正しくデータが飛ぶか、不安もありました。一つひとつのコードを、丁寧に確認しました。テスト送信の結果、正常に動作しました。その時の達成感は、今も覚えています。これで転記作業から、解放されると感じました。

初めてトリガーを設定した時のことです。「承認が必要です」という警告が出ました。私は、少しばかり戸惑ってしまいました。セキュリティのポップアップ画面です。「詳細」から「安全ではないページ」を選びます。この操作を行う間、不安でいっぱいでした。会社のアカウントに、影響がないか心配です。冷や汗をかいたのも、今では良い思い出です。
GAS×関数連携で即時集計完了
転記が終わると、関数が本領を発揮します。スプレッドシート関数との連携を重視しました。GASが書いた金額を、SUMIFが拾います。部門別などの合計値を、即座に算出します。手で打ち込んでいた頃とは、全く違います。ミスや数式のズレに、怯える必要もありません。データが入った瞬間に、計算が終わります。月末の集計作業は、常に完了した状態です。このような自動化の仕組みを、作ることができました。
Python・業務自動化を動画でじっくり学ぶなら
Pythonでの業務自動化を基礎から動画で学びたい方には、オンライン学習サイト「Udemy」が選択肢です。自分も書籍だけでは理解できなかった部分を、動画講座で手を動かしながら覚えました。セールのタイミングなら手頃な価格で始められます。
承認フローの自動化とパイプライン化
データの転記だけでは、不十分です。経費精算には、上長の承認が必要です。以前は、申請のたびに経理が確認しました。内容をチェックし、部長の席まで運びます。アナログな回覧を、地道に行っていました。この承認依頼も、GASで自動化しました。フォームが送信されると、メールを送ります。専用のメソッドを、呼び出すようにしました。スクリプトの中で、申請者名を抽出します。それらのデータを、メール本文に流し込みます。
リアルタイムな承認システムの構築
上長のメールには、整理された内容が届きます。リアルタイムに、情報が共有されます。スプレッドシートを開く手間も、ありません。メールを一読するだけで、内容がわかります。さらに、連携機能を拡張することにしました。承認者が専用ボタンを押す仕組みです。すると、シートの「状況」列が更新されます。「承認済」というフラグが、自動で立ちます。経理部門を、単なる中継ぎにはさせません。システムが、申請者と承認者を繋ぎます。強固なパイプラインへと、進化させました。
100万円バス代、入力ミスの落とし穴
テスト環境での動作は、完璧な状態でした。満を持して、全社員へ公開しました。URLを周知した、初日の午後のことです。スプレッドシートを見て、私は驚愕しました。信じられない数字が、飛び込んできたのです。交通費の金額欄を見て、目を疑いました。「1000000」という数値がありました。近所の取引先へ向かう、普通のバス代です。それが100万円という巨額に、化けていました。

画面の「1,000,000」を何度も見ました。心臓が跳ね上がり、パニックになりました。あわてて、該当の申請者へ連絡を入れます。新入社員の方へ、チャットを送りました。「バス代が100万円ですが、どうしましたか?」と。すると、すぐに謝罪の返信が届きました。「テンキーの0を長押ししました」とのことです。彼からのメッセージを見て、脱力しました。
人間による入力エラーという不可避な課題
人間というものは、必ずミスをします。テンキーの連打は、誰にでも起こり得ます。桁数の勘違いも、よくある話です。予測変換が暴発することもあるでしょう。システムを綺麗に準備しても、無駄です。入り口での制限が甘ければ、汚いデータが入ります。そのまま帳簿に、書き込まれてしまいます。フォームには、数値を求める設定はあります。しかし「常識の範囲」は強制できません。入り口のデータを、過信してはいけません。これが、実際に痛い目を見て学んだ教訓です。
GASで入力バリデーション!データの門番
誤ったデータを、シートに入れない工夫です。関所のような役割が必要だと、考えました。そこで、GASのコードを修正しました。送信時の処理に、バリデーションを入れます。入力値が正しいかを、チェックする工程です。ロジック自体は、非常にシンプルなものです。フォームの金額を、if文で判定します。もし金額が10万円以上なら、処理を飛ばします。集計シートへの転記を、行わないようにしました。
自動差し戻し機能と正確なデータ管理
同時に、本人へメールを送るようにしました。自動でメールを送信する機能を使います。「金額が上限を超えています」と通知します。「内容を確認してください」と差し戻すのです。上限のチェックだけでは、不十分でした。マイナス値の入力がないかも、検証します。数値以外の文字が、混ざっていないかも見ます。これらを併せて検証する処理を、組み込みました。空欄の場合の扱いも、慎重に検討しました。運用ルールと照らし、細かく調整します。人間のミスを、システムが跳ね返します。これで、堅牢な仕組みが完成しました。基礎から学びたい方は、書籍を見てください。スクールで教わるのも、確実な方法です。
業務改革、不正防止と評価
バリデーションを追加し、3ヶ月が経ちました。この間、誤ったデータは入っていません。事故が起きていないことは、大きな成果です。GASの関所が、正しく機能してくれました。申請者自身に、修正を促せています。おかげで、経理の机から紙が消えました。手入力による転記も、今はもうありません。間違いを確認する電話も、過去のものです。あれほど苦痛だった月末が、一変しました。関数が計算した結果を、確認するだけです。数分間の作業で、すべてが完了します。

効率化の効果は、経理以外にも及びました。申請から承認までの時間が、短縮されました。リードタイムが、劇的に改善されたのです。以前は平均4.2日ほど、かかっていました。それが今では、わずか1.8日で完結します。ある日、廊下で営業部長とすれ違いました。「最近、振り込みが早いね」と言われました。「助かっているよ」と、笑顔をいただきました。日々の裏方作業が、しっかりと評価されました。数字に出た成果を、非常に嬉しく思いました。
経費精算自動化の3ステップ
経理を苦しめる地獄は、変えられます。既存ツールを合わせれば、終わらせられます。第一のステップは、Googleフォームです。入り口を統一し、プルダウンを使いましょう。これで、入力ミスを物理的に防ぎます。第二のステップは、GASによる連携です。トリガーを、正しく設定してください。集計シートへの自動転記を、確実に行います。承認者への通知も、ここで繋ぎます。そして、第三のステップが重要です。GASでバリデーションを追加してください。これで、システムをより堅牢にできます。
小さな改善から始める業務の自動化
まず、この3ステップを構築してください。現場と経理、双方の負担を削ぎ落とせます。素晴らしい仕組みが、手に入るはずです。会社の規模が大きくなれば、次があります。SaaSへの移行も、一つの手です。有名なツールを、検討する時期が来ます。それでも、今の経験は無駄になりません。非効率を自分の手で潰した経験は、宝物です。それは、次の自動化への強力な武器になります。自身の環境で、スプレッドシートを開きましょう。身近な作業から、コードを書き始めてください。勤怠管理など、応用先はたくさんあります。他の業務に活かすヒントも、紹介しています。ぜひ、そちらも参考にしてみてください。
関連リンクとチェックリスト
無料プレゼント
Excel業務を自動化する前に確認するチェックリスト(PDF)
自動化していい作業かどうか、VBAかPythonか、最初に避けるべき落とし穴。実務でよく迷うポイントを1枚にまとめました。メールアドレスだけで受け取れます。
無料でチェックリストを受け取る¥980 ミニキット
コピペで動かせる3スクリプト+自動化チェックリスト
最新ファイルの自動選択・部署名ゆれの正規化・CSV文字コード確認の3本セット。今週の作業を1つだけ楽にするための最小キットです。
ミニキットを見る(¥980)著者はこうして解決の糸口を見つけた
私も同じ境遇から始まりました。独学でここまで自動化した道のりを参考にしてみてください。
学習サービスとアンケート
このスキルを活かしてさらに前へ進むなら
Pythonや自動化スキルを体系的に習得して、ITエンジニアとしてのキャリアを切り開きたい方には「Enjoy Tech!(エンジョイテック)」が選択肢のひとつです。

