01「作った人しか使えない」マクロはなぜ生まれるのか
ExcelのVBAマクロは、特定の繰り返し作業を自動化できる便利な機能ですが、同時に属人化しやすいツールの代表格でもあります。その理由は、マクロが作られる背景にあります。
多くの場合、業務の中で「この集計作業、毎回同じ手順で時間がかかる」と感じた担当者が、インターネットで調べながら自力でコードを書きます。動けば完成、という感覚で作ることが多く、次のような特徴が重なりやすくなります。
- コードの中にコメントがほとんど書かれていない
- 変数名が略称や記号で意味が伝わりにくい
- 処理の流れを説明したドキュメントが存在しない
- 特定のフォルダパスやファイル名がコードにハードコードされている
これらが重なると、作った本人以外には「なぜこの処理をしているのか」「エラーが出たときにどこを見ればいいのか」がまったく伝わりません。
たとえば、毎月の売上集計に使ってきたマクロが5年間動き続けていたとします。ある日、担当者の退職が決まり、後任に引き継ぐことになりました。口頭で説明はしたものの、後任者が実際に動かしてみるとエラーが出て止まります。Excelのバージョンが変わっていたことが原因でしたが、コードの中のどこを修正すればいいかが分からない。その月の集計が数日遅延し、経営者も担当者も焦る——こうした事態は、規模の大小を問わず起きています。
マクロの属人化は「担当者が整備を怠った」のではなく、業務の仕組みとしてルール化されていなかったことが原因です。問題が起きてから動くのではなく、担当者がいるうちに手を打つことが重要です。
02属人化マクロが引き起こす3つの業務リスク
担当者退職のタイミングで一気に顕在化することが多いですが、実際には退職前からリスクは少しずつ積み上がっています。代表的な3つを整理します。
リスク①:担当者不在でマクロが動かなくなる
最もよくあるのが、処理が突然止まるケースです。Excelのバージョン更新、PCの入れ替え、参照先ファイルのパス変更など、些細な変化でマクロがエラーになります。作った本人がいれば数分で直せる問題でも、不在の場合は「どこを直せばいいか分からない」まま作業が止まります。月次の集計・請求書の自動作成・棚卸し処理など、タイムラインのある業務でこれが起きると深刻です。
リスク②:ミスが起きても原因を追えない
属人化したマクロは、処理のロジックが外から見えません。結果の数字が合わないことに気づいても、どのステップで誤りが入ったのかを追うのが困難です。経理・在庫管理・顧客データの集計など、精度が求められる業務でこれが起きると、修正のための確認作業自体に大きな時間がかかります。
リスク③:業務変化への対応ができない
取り扱う商品が増えた、管理したい項目が変わった、集計の粒度を細かくしたい——こうした業務の変化に対して、マクロを修正できる人がいなければ対応できません。結果として、変化した業務をマクロに合わせて動かすという本末転倒が起きることもあります。
| リスクの種類 | 発生しやすいタイミング | 業務への影響 |
|---|---|---|
| マクロが動かなくなる | バージョン更新・PC入れ替え・担当者退職 | 業務停止・集計遅延・対応者不在 |
| ミスの原因を追えない | 出力数値のズレが発覚したとき | 修正に長時間かかる・信頼性が低下する |
| 業務変化に対応できない | 商品・管理項目・組織体制の変更時 | 業務がマクロに縛られる・手作業が再発する |
これらのリスクはExcel管理全般にも共通する課題です。Excel管理の限界サインと移行の進め方では、Excelで管理を続けることへの判断基準をより詳しく解説しています。
03まずやるべき「ドキュメント化」の進め方
属人化を解消する最初の一手は、マクロを動かせる担当者がいるうちに「ドキュメント化」を済ませることです。完璧なドキュメントは難しくても、次の4点を残しておくだけで引き継ぎのリスクは大きく下がります。
残すべき情報の4点セット
- 目的と概要:このマクロは何をするためのものか(例:A商品の月次売上を集計して商品別・月別の一覧表をシートに書き出す)
- 使い方の手順:誰がどのタイミングで実行するのか、操作の具体的な手順(どのボタンを押す・どのファイルを開く等)
- 入力と出力:どのファイル・シート・セル範囲を読んで、どこに結果を書き出すか
- 注意点・よくあるエラー:過去に起きたエラーとその対処方法(「○○のファイルが別フォルダにあるとエラーになる」等)
これらをWordやExcelの別シートに書き、マクロファイルと一緒に共有フォルダに保管します。ドキュメントの場所さえ分かれば、担当者不在でも「何をしているマクロか」を把握でき、外部の開発会社に見せる際にも話が早くなります。
マクロのコード内にもコメントを追記しておくと、後から読む人がロジックを理解しやすくなります。コード全行に書く必要はなく、処理のまとまりごとに「ここで商品コードを抽出している」「ここで合計を計算している」と1行コメントを入れるだけでも大きく違います。
ドキュメント化は、現状の属人化リスクを下げるための応急手当です。担当者が在籍しているうちに着手し、退職・異動のタイミングを待たないことが重要です。
04解消策の選択肢|Web化・システム化への移行パターン
ドキュメント化が済んだら、次はマクロで行っている処理をより管理しやすい形に置き換えることを検討します。代表的な3つの選択肢を整理します。
選択肢①:ノーコード・クラウドツールに置き換える
Google スプレッドシートのAppScriptや、Make・Zapierなどの自動化ツールを活用する方法です。処理がクラウド上で動くため、特定のPCや担当者に依存しにくくなります。シンプルなデータ転記・通知・軽い集計処理などには向いていますが、複雑なロジックや既存のデータベースとの連携が必要になると限界が出てきます。
選択肢②:既製のSaaSに機能を任せる
集計・管理業務であれば、クラウド型の会計ソフト・顧客管理ツール・在庫管理SaaSに移行することで、マクロが担っていた処理を標準機能に置き換えられる場合があります。ツール自体がメンテナンスされ続けるため属人化しにくい構造になります。ただし、自社業務のやり方に合わせた独自のルールがある場合は、SaaSの標準機能と合わない部分が出てくることもあります。
選択肢③:Web化・受託開発で業務システムに作り直す
処理が複雑だったり、複数の業務やデータをつないだりする必要がある場合は、マクロの処理をWebシステムとして作り直すことも選択肢になります。ブラウザから誰でも操作できるようになり、PC環境に左右されず、権限設定(誰がどのデータを見られるか)も組み込めます。初期費用はかかりますが、長く使う基幹業務ほど安定した選択肢です。たとえば当社が開発した「多言語チャット予約システム」のように、複数の処理をひとつのWebシステムに統合することで、担当者依存から抜け出せます。
| 移行先の選択肢 | 向く業務・特徴 | 注意点 |
|---|---|---|
| ノーコード・クラウドツール | シンプルなデータ転記・通知・軽い集計 | 複雑な処理や既存DB連携で限界がある |
| 既製SaaS | 汎用的な顧客管理・会計・在庫管理 | 自社独自のルールと合わない部分が残ることも |
| Web化・受託開発 | 複雑な処理・複数業務の連携・基幹業務 | 初期費用がかかるが長期安定性が高い |
「自社のマクロはどれに当てはまるか」が分からない場合は、まず開発会社に現状を見せて相談してみることをおすすめします。業務効率化ツールの開発費用の目安も参考にしながら、移行の方向性を検討してみてください。
05業務を止めずに進める段階的ステップ
「すぐに全部のマクロを作り直そう」は現実的ではありません。業務を止めずに属人化を解消するには、優先順位をつけて段階的に進めることが大切です。
ステップ1:現状把握(棚卸し)
社内にあるExcelマクロを一覧化します。確認すべき項目は次の4点です。
- 誰が作ったか、誰が管理しているか
- いつ・どの業務で使っているか
- これが止まると何の業務がどれだけ困るか(影響の大きさ)
- ドキュメントや引き継ぎ資料が存在するか
一覧が揃ったら「止まると最も困る業務のマクロ」から優先順位をつけます。担当者がいるうちにドキュメント化・移行の準備を進めるマクロはどれか、を決めることがここでのゴールです。
ステップ2:優先度の高いマクロをドキュメント化する
前述した4点セット(目的・手順・入出力・注意点)を、作成者本人にヒアリングしながらまとめます。退職・異動の予定がある担当者がいる場合は、そのマクロを最優先で進めます。引き継ぎ者と一緒に実際に動かして確認し、疑問点をその場で解消しておくと確実です。
ステップ3:移行先を検討し、小さく試す
棚卸しとドキュメント化が揃ったら、最も影響の大きいマクロから移行先を検討します。ノーコードで十分か、既製SaaSで代替できるか、それとも作り直しが必要かを判断します。いきなり全マクロを移行しようとせず、1業務から始めて手応えを確かめながら広げることをおすすめします。スモールスタートで進める考え方は、ここでも有効です。
ステップ4:管理ルールを整備して再属人化を防ぐ
移行後も、新しいマクロや自動化ツールを属人化させないための運用ルールを決めます。「マクロや自動化の仕組みを作ったら、必ず4点セットのドキュメントとセットで共有フォルダに保管する」「変更履歴を残す」といったルールを習慣化することで、同じ問題の繰り返しを防げます。
Excelマクロの属人化は、「今すぐ業務が止まっているわけではない」時期にこそ対処が進めやすくなります。担当者がいるうちにドキュメント化を済ませ、移行の選択肢を整理しておくことが、業務を止めないためのいちばんの近道です。