「数百のファイルを1つ1つ開くの面倒……」、複数のExcelデータを1箇所に集約するマクロ術:働く価値を上げる“VBA/GAS”術(7)(1/3 ページ)
経費精算書のように「バラバラのデータを1箇所に集約すること」は、多く発生する業務の1つです。しかし、1つ1つのファイルを開きコピー&ペーストするのは手間が掛かる業務。その業務を、マクロを使って自動化する方法を紹介します。
Excel VBAとGAS
業務で発生するちょっとした面倒くさい業務。特定の操作を繰り返すだけなので、今のままでもいいけど、楽になったらいいなと思うこともあるのではないでしょうか。例えば業務を自動化すると時間が空くため、他の業務に時間を充てたり、残業時間を減らしたりできるかもしれません。
本連載「働く価値を上げる“VBA/GAS術”」では、業務を効率化する手段として「Microsoft Excel」(マイクロソフトエクセル)で使える「VBA」(Visual Basic for Applications)と「G Suite」の「GAS」(Google Apps Script)の使い方を説明し、よくある業務課題の解決策を紹介します。
Excel VBAで経費精算書のデータを収集するマクロを作る
第5回目、第6回目では書類作成を自動化する例として、領収書を作成するプログラムの作り方を紹介しました。具体的には、データベースのデータを1行ずつ抽出して、それぞれの領収書ファイルに転記する処理です。
一方、実務では、バラバラのデータを1つのデータベースに集約したいニーズもあります。その典型的な例が、「経費精算書」です。経費精算書作成の例として、1カ月に一度、従業員一人一人がExcelファイルに記録している経費リストを集め、1つのExcelシートに集計する方法があります。
1カ月に一度の業務ですが、全従業員のExcelファイルを開き、該当の部分をコピーして、Excelシートに貼り付けてまとめる……。手間が掛かることが容易に想像できると思います。
そこで、今回は経費精算書を例に、バラバラの書類から自動でデータを集約するマクロを紹介します。なお、本稿で使用している命令については以下の記事で詳しく解説しているので、都度ご参照ください。
連載「働く価値を上げる“VBA/GAS術”」のVBAに関する記事
経費精算書フォーマットとデータ収集の方法
今回は、図1のような経費精算書フォーマットを用意します。
このフォーマットで、全従業員から1カ月分の経費精算書が集め、これらのデータを図2のExcelシートに集約する業務を想定します。この処理を自動化するマクロを作成するのが今回の目標です。なお、この収集先のExcelファイル名は「経費収集.xlsm」で、シート名も同様に「経費集計」とします。
フォルダ構成は、図3のように「経費収集.xlsm」と同じ階層に「経費精算書」フォルダを用意し、その中に各スタッフから集めたExcelファイルを格納します。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 中級レベルの「Excel VBA開発者」になるために必要な考え方
Excel VBAを使って業務効率化を実現。しかし、自分で書いたコードをメンテナンスするとき、コードの解読に時間がかかってしまったり、エラーが解消できなかったりといった苦い経験はないだろうか。どうすれば将来も楽になるコーディングができるのだろうか。 - タイプミスをゼロにするのは不可能? VBAコーディングを速めるツールとは
どんな上級プログラマーでも、タイプミスをゼロにできないまでも、「素早く正確にコーディングできる」能力を持っています。その能力を下支えする、マスターしても損のないVBEの機能を紹介します。 - 税率変更にも簡単に対応、無駄を減らすコーディングのコツとは
消費税率変更のように、「将来変わる可能性のある数値」がコード内に複数含まれている場合、修正に時間がかかってしまいます。メンテナンスを楽にするコーディングのコツとは何でしょうか。