経費精算書のように「バラバラのデータを1箇所に集約すること」は、多く発生する業務の1つです。しかし、1つ1つのファイルを開きコピー&ペーストするのは手間が掛かる業務。その業務を、マクロを使って自動化する方法を紹介します。
業務で発生するちょっとした面倒くさい業務。特定の操作を繰り返すだけなので、今のままでもいいけど、楽になったらいいなと思うこともあるのではないでしょうか。例えば業務を自動化すると時間が空くため、他の業務に時間を充てたり、残業時間を減らしたりできるかもしれません。
本連載「働く価値を上げる“VBA/GAS術”」では、業務を効率化する手段として「Microsoft Excel」(マイクロソフトエクセル)で使える「VBA」(Visual Basic for Applications)と「G Suite」の「GAS」(Google Apps Script)の使い方を説明し、よくある業務課題の解決策を紹介します。
第5回目、第6回目では書類作成を自動化する例として、領収書を作成するプログラムの作り方を紹介しました。具体的には、データベースのデータを1行ずつ抽出して、それぞれの領収書ファイルに転記する処理です。
一方、実務では、バラバラのデータを1つのデータベースに集約したいニーズもあります。その典型的な例が、「経費精算書」です。経費精算書作成の例として、1カ月に一度、従業員一人一人がExcelファイルに記録している経費リストを集め、1つのExcelシートに集計する方法があります。
1カ月に一度の業務ですが、全従業員のExcelファイルを開き、該当の部分をコピーして、Excelシートに貼り付けてまとめる……。手間が掛かることが容易に想像できると思います。
そこで、今回は経費精算書を例に、バラバラの書類から自動でデータを集約するマクロを紹介します。なお、本稿で使用している命令については以下の記事で詳しく解説しているので、都度ご参照ください。
今回は、図1のような経費精算書フォーマットを用意します。
このフォーマットで、全従業員から1カ月分の経費精算書が集め、これらのデータを図2のExcelシートに集約する業務を想定します。この処理を自動化するマクロを作成するのが今回の目標です。なお、この収集先のExcelファイル名は「経費収集.xlsm」で、シート名も同様に「経費集計」とします。
フォルダ構成は、図3のように「経費収集.xlsm」と同じ階層に「経費精算書」フォルダを用意し、その中に各スタッフから集めたExcelファイルを格納します。
Copyright © ITmedia, Inc. All Rights Reserved.