「DX推進、よろしく」
上司からそう言われた日から、あなたはMicrosoftのポータルサイトと格闘し続けているのではないだろうか。
PowerApps、Power Automate、SharePoint——ライセンスはある。マニュアルもある。でも、現場に使ってもらえない。自分でも作るのに時間がかかりすぎる。そして気づいたら、「DX推進」という看板だけが残って、誰も使わないシステムができあがっていた。
私もそうだった。現場のDX推進担当として、まずPowerAppsでアプリを作ろうとした。ノーコードだから簡単なはず、と。
結果:1つのフォームアプリを作るのに3週間かかった。現場の人間は「スマホで開くのが面倒」と言い、結局誰も使わなかった。
次にRPAを試した。定型業務の自動化には向いているが、少し業務フローが変わると動かなくなる。メンテナンスコストが高すぎる。
そして私が行き着いた答えは、意外にもExcelマクロだった。
なぜPowerAppsは「現場で使われない」のか
PowerAppsは優れたツールだ。否定はしない。だが、現場DXという文脈では、いくつかの構造的な問題がある。
① ノーコードと生成AIの相性が悪い
今の時代、開発の最大の武器は生成AIだ。「こういう処理をしたい」とChatGPTやCopilotに伝えれば、コードを書いてくれる。
しかしPowerAppsのノーコード画面では、AIが出力した処理ロジックをそのまま貼り付けることができない。PowerAppsにはPower Fx という独自の数式言語があり、AIはそれを完璧には扱えない。結果として、「AIに聞いても使えない」という状況が生まれる。
② 現場の導入ハードルが高い
PowerAppsで作ったアプリは、ブラウザかスマートフォンアプリで開く。これが現場では意外な障壁になる。
製造業や建設業、介護現場では、共用PCがあってもスマートフォンは個人端末だったり、ネット接続が制限されていたりする。「URLを開いてください」と言っても、それ自体がハードルになる。
③ 社内申請が必要なケースがある
会社によってはPowerAppsの利用に情報システム部門への申請が必要だったり、ライセンスが別途必要だったりする。RPAツールも同様だ。DX推進担当が「ちょっと試したい」という段階で、すでに稟議が必要になることがある。
Excelマクロが現場DXの最適解である3つの理由
① 生成AIとの相性が抜群
ExcelマクロはVBA(Visual Basic for Applications)というコード言語で書く。このVBAを生成AIに書かせることが、今では驚くほど簡単にできる。
「Excelのシートをコピーして連番でシート名をつけるマクロを書いて」とChatGPTに投げれば、30秒で動くコードが返ってくる。それをVBAエディタに貼り付けて実行するだけ。プログラミングの知識がなくても、目的を日本語で伝えれば動くものが作れる。
Microsoft 365のCopilotがあれば、Excelの画面上でAIに直接コードを生成させることも可能だ。ノーコードツールよりも、むしろExcel×AIのほうが開発スピードが速い、という逆転現象が起きている。
② 導入ハードルがほぼゼロ
Excelはほぼすべての職場にある。追加のライセンスも、社外ソフトの申請も不要。共用PCにExcelファイルを置いて「このボタンを押してください」と言えば、それだけで使い始められる。
スマートフォンも、ブラウザも、URLの共有も、ログインアカウントも不要。「Excelを開く」という行為なら、どんな現場でも理解できる。
③ インターフェースの自由度が高い
Excelはセルに色をつけ、ボタンを置き、プルダウンを設定し、入力規則で制御できる。現場の作業者が慣れ親しんだ表形式のまま、使いやすいUIを作れる。
PowerAppsのようなアプリライクなUIより、現場では「Excelっぽい画面」のほうが受け入れられやすいことが多い。
実践例:業務日誌のデジタル化を3シート構造で実現する
では具体的にどう作るか。私がよく使う「3シート構造」を使った業務日誌デジタル化を例に説明する。

3シートの役割
| シート名 | 役割 | 内容 |
|---|---|---|
| ホーム | 操作パネル | ボタン(日誌作成・データ更新など)を配置。作業者が触るのはここだけ |
| テンプレ | フォームの原型 | 空の業務日誌フォームを1枚用意しておく。書式・入力規則・プルダウンを設定済み |
| データベース | 台帳・集計 | 日付・部署・氏名・シートへのリンクを自動転記。管理者はここで一覧確認 |
動作フロー
- 日誌作成ボタンを押す:テンプレシートが自動コピーされ「001」「002」と連番でシート名が付く
- 日誌を記入する:コピーされたシートに日付・業務内容・担当者名などを入力
- 投稿ボタンを押す:入力内容がデータベースシートに自動転記される。リンク列にはそのシートへのハイパーリンクが入る
- 管理者がデータベースを開く:一覧から日付・部署・氏名で確認し、リンクをクリックして詳細を確認
これをゼロから作ろうとすると大変に見えるが、生成AIがあれば話が変わる。
生成AIを使った作り方:プロンプトをそのまま公開する
以下のプロンプトをChatGPTに投げるだけで、動くVBAコードが手に入る。
【プロンプト①】日誌作成ボタン用マクロ
「Excelマクロ(VBA)を書いてください。『テンプレ』という名前のシートをコピーして、シート名を3桁の連番(001、002…)で自動的につけるマクロです。連番はすでにあるシート名を見て、次の番号を自動判定してください。コピーしたシートはシートの末尾に追加してください。」
【プロンプト②】データベース転記ボタン用マクロ
「Excelマクロ(VBA)を書いてください。現在アクティブなシートのA2セル(日付)、B2セル(部署名)、C2セル(氏名)の値を、『データベース』シートの次の空行に転記します。さらに転記した行のD列に、元のシートへのハイパーリンクを設定してください。リンクのテキストは『開く』にしてください。」このプロンプト2つを投げて出てきたコードを、ExcelのVBAエディタ(Alt+F11)に貼り付ける。あとはボタンに割り当てれば完成だ。慣れれば30分もかからない。
PowerApps・RPA・Excelマクロ 比較まとめ
| 比較項目 | PowerApps | RPAツール | Excelマクロ+AI |
|---|---|---|---|
| 生成AIとの連携 | △ 独自言語の壁あり | △ 限定的 | ◎ VBAをそのまま生成可能 |
| 導入ハードル | △ ライセンス・申請が必要なことも | ✕ 別途ライセンス・申請が必要 | ◎ Excelがあれば即日導入可 |
| 現場の受け入れ | △ スマホ・ブラウザに慣れが必要 | ◯ 自動で動くので意識不要 | ◎ Excelの延長線上で使える |
| 開発スピード | △ UIの学習コストが高い | △ フロー定義に時間がかかる | ◎ AI+コピペで数時間〜 |
| メンテナンス | ◯ ノーコードで変更しやすい | △ フロー変更のたびに修正が必要 | ◯ AIに変更点を伝えれば即修正 |
| コードエディタ | ◯ クラウドベース | ◯ 専用IDE | △ VBAエディタは古い(ただし機能は十分) |
Excelマクロで作れる現場DXの事例
3シート構造は、業務日誌以外にも応用が利く。同じパターンで以下のようなツールが作れる。
- 点検記録システム:点検項目をテンプレに設定→記録後にデータベースへ転記→異常値があれば自動で色付け
- 作業引き継ぎ票:担当者・作業内容・残課題をデジタル化→一覧から検索・フィルター可能
- 在庫管理台帳:入出庫ボタンで数量を自動更新→在庫数が閾値を下回ったらセルを赤く変更
- クレーム受付管理:クレーム内容・対応状況・担当者をデータベースで一元管理
いずれも「テンプレ・データベース・ホーム」の3シート構造をベースに、AIでマクロを生成すれば作れる。
Excelマクロの唯一の弱点と対処法
正直に言う。ExcelマクロのVBAエディタは古い。2024年の今も、UIは1990年代のままだ。コードの補完機能が弱く、デバッグも不便だ。
ただし、これは「生成AIを使う」という前提が入ることで大きく緩和される。
コードを自分で書く必要がないなら、エディタの使い勝手はほぼ関係ない。「エラーが出た。このエラーメッセージを見て直して」とAIに投げるだけで修正される。VBAエディタを使うのは「コードを貼り付ける」という作業だけでいい。
まとめ:DX推進担当者へのメッセージ
PowerAppsもRPAも、使いこなせれば強力なツールだ。ただ、現場DX担当者が「今すぐ動けるもの」「現場に受け入れてもらえるもの」を選ぶなら、Excelマクロ+生成AIが現時点で最も現実的な選択肢だと私は思っている。
難しいことは考えなくていい。まず3シート構造を1つ作ってみる。AIにプロンプトを投げて、コードを貼り付けて、ボタンを押してみる。それだけで現場の景色は変わる。
「DXは難しい」のではない。「難しいツールを選んでいた」だけかもしれない。
最後まで読んでくれてありがとうございます。
「自分の現場でも試してみたい」「こんなケースはどう作る?」という質問があれば、ぜひコメントで教えてください。


コメントを残す