DX担当者が本当に使えるツールはどれか|PowerAppsより先にExcelマクロを選ぶべき理由

「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シート構造」を使った業務日誌デジタル化を例に説明する。

DX担当者が本当に使えるツールはどれか|PowerAppsより先にExcelマクロを選ぶべき理由|excel structure

3シートの役割

シート名役割内容
ホーム操作パネルボタン(日誌作成・データ更新など)を配置。作業者が触るのはここだけ
テンプレフォームの原型空の業務日誌フォームを1枚用意しておく。書式・入力規則・プルダウンを設定済み
データベース台帳・集計日付・部署・氏名・シートへのリンクを自動転記。管理者はここで一覧確認

動作フロー

  • 日誌作成ボタンを押す:テンプレシートが自動コピーされ「001」「002」と連番でシート名が付く
  • 日誌を記入する:コピーされたシートに日付・業務内容・担当者名などを入力
  • 投稿ボタンを押す:入力内容がデータベースシートに自動転記される。リンク列にはそのシートへのハイパーリンクが入る
  • 管理者がデータベースを開く:一覧から日付・部署・氏名で確認し、リンクをクリックして詳細を確認

これをゼロから作ろうとすると大変に見えるが、生成AIがあれば話が変わる。


生成AIを使った作り方:プロンプトをそのまま公開する

以下のプロンプトをChatGPTに投げるだけで、動くVBAコードが手に入る。

【プロンプト①】日誌作成ボタン用マクロ

「Excelマクロ(VBA)を書いてください。『テンプレ』という名前のシートをコピーして、シート名を3桁の連番(001、002…)で自動的につけるマクロです。連番はすでにあるシート名を見て、次の番号を自動判定してください。コピーしたシートはシートの末尾に追加してください。」

【プロンプト②】データベース転記ボタン用マクロ

「Excelマクロ(VBA)を書いてください。現在アクティブなシートのA2セル(日付)、B2セル(部署名)、C2セル(氏名)の値を、『データベース』シートの次の空行に転記します。さらに転記した行のD列に、元のシートへのハイパーリンクを設定してください。リンクのテキストは『開く』にしてください。」