Excel自動化で先に決める三つのこと
最初に決めるのはマクロの作り方ではありません。対象業務の開始条件と完了条件、改善したい負担、対象外を明確にします。たとえば「月次集計」では、元ファイルがそろった時点から報告書が承認されるまでを対象にするのか、集計処理だけにするのかで設計が変わります。
削減したい実作業時間だけでなく、ファイル待ち、差し戻し、入力ミス、確認回数、締め日の集中も記録します。改善後も同じ定義で測れる項目に絞ります。
- 開始条件・完了条件・対象外
- 利用者・承認者・例外時の判断者
- 入力元・正本・出力先・保存期間
ステップ1:対象業務を一つに絞る
最初の候補は、頻度が高く、手順が比較的明確で、例外を把握できる業務が適しています。影響が大きい処理は効果も大きく見えますが、誤り時の損失や復旧難易度も確認します。
複数業務を同時に自動化すると、入力変更や遅延の原因を切り分けにくくなります。まず一つの出力物と一つの担当チームで検証し、判断基準を作ります。
ステップ2:現行ファイルと手順を棚卸しする
実際に使うファイルを開き、シート、テーブル、列、数式、名前定義、マクロ、外部リンク、保存場所を確認します。手順書だけでは、担当者が毎回手で補正する値や、暗黙の命名規則を見落とします。
正常な月だけでなく、欠損、重複、取消、締め後修正、列追加、ファイル遅延が起きた月を確認します。例外を通常フローから分けて一覧化します。
ステップ3:方法を比較する
Power Queryはデータ取得・整形・結合に向き、VBAはOffice内の反復操作に向きます。Power Automateはメール、ファイル、承認、他サービスとの接続に使えます。複数人の同時利用、細かな権限、監査履歴が必要なら業務システムも候補です。
開発時の速さだけでなく、実行環境、ライセンス、資格情報、担当交代、仕様変更、障害時の復旧まで含めて比較します。
| 方式 | 適する処理 | 主な注意点 |
|---|---|---|
| Power Query | CSV統合、列変換、データ結合 | 入力形式、型、更新元、資格情報 |
| VBA・Office Scripts | 帳票作成、Office内の一括操作 | 端末、マクロ設定、保守、署名 |
| Power Automate・RPA | メール、ファイル、Web、承認連携 | 接続、権限、ライセンス、失敗処理 |
| API・業務システム | 複数人、履歴、権限、大量処理 | 連携仕様、監視、運用責任 |
ステップ4:入力ルールと例外処理を設計する
列名、必須項目、データ型、コード、日付、重複条件を仕様として記録します。入力が条件を満たさないときは、処理を止める、対象行だけ保留する、警告して続行するのいずれかを決めます。
エラーメッセージには、原因、対象、利用者が取る行動を含めます。開発者向けの例外文字列だけでは現場で復旧できません。
ステップ5:正常・境界・異常・再実行をテストする
通常データだけでなく、0件、最大件数、空欄、重複、文字化け、列追加、ファイル欠落、権限不足、通信切断を確認します。途中で停止した処理を再実行しても、二重登録や二重送信が起きないか確認します。
期待結果は画面の見た目だけでなく、件数、合計、照合結果、出力ファイル、ログで確認します。利用者自身が受入テストを行い、業務上の完了条件を満たすか判断します。
ステップ6・7:運用を引き継ぎ、同じ指標で効果を確認する
操作手順に加え、入力仕様、エラー一覧、バックアップ、復旧、変更方法、問い合わせ先を引き継ぎます。担当者が不在でも停止・再開できるかを確認します。
改善前後は同じ対象期間と定義で比較します。繁忙期や処理件数が異なる場合は、1件当たり時間や差し戻し率など比較可能な形にします。効果を一律に保証せず、継続、修正、対象拡大を判断します。
参考資料
- MicrosoftPower Query のドキュメント ↗
- MicrosoftGetting started with VBA in Office ↗
- MicrosoftExcel でフローを使用する ↗
- IPA中小企業の情報セキュリティ対策ガイドライン 第4.0版 ↗