プログラミングスキルなしで脱Excel。属人化したExcelマクロを、生成AIで業務システムにした話

対象読者:Excel やマクロで業務を回しているバックオフィスの方/ツールを買う予算はないが、日々の業務を改善したい方
※個人情報を含む画面は使わず、図解で説明しています。試しの段階では、候補者のデータはすべて架空のものを使いました

脱Excelとは、Excel やマクロで回している業務を、複数の人が同時に使えるシステムに移すことです。 ファイルが重い、同時に編集できない、マクロを作った人しか直せない。こうした「Excel管理の限界」を解消するのが目的です。

わたしたち FROM CENTER では、採用の進み具合を Excel のマクロで管理していました。候補者が増えるにつれてファイルは重くなり、マクロの中身がわかる人も限られていきました。そこで、生成AI の Claude Code を使い、このマクロを Web で使える業務システムに作り直しました。

設計書も、担当者が一から書いたわけではありません。今の Excel マクロを AI に読ませて起こしてもらい、人は中身を確かめて質問に答えただけです。プログラムも1行も書いていません。作る・テストする・クラウドに載せる作業は AI が進め、ほぼ1日で動くところまで来ました。この方法の要は、設計書を直すと、AI がコードとテストを設計書に合わせて作り直すことです。人はプログラムを読まずに、設計書だけを持ち続ければよくなります。この記事では、その手順を10に分けて紹介します。後半には、実際にぶつかったつまずきを10問のFAQにまとめています。

人が作れば約23人月の開発が、AI で約14時間。費用は約3万円

  • 人が作った場合の見積もり:約23人月(工程ごとの積み上げ。内訳は「かかった時間と費用」)
  • AI が作った時間:約14時間(初版の約10時間半+仕様変更の約3時間)。設計書を起こした半日を入れても約1日
  • 費用:約3万円(生成AI の利用料 約2.5万円+クラウドの利用料の見込み)
この記事でわかること

  • 設計書を直すだけで、コードとテストが追いつく仕組み
  • Excel マクロを、プログラミングなしで業務システムにする10の手順
  • 脱Excelの設計書は、今の Excel マクロから AI に起こしてもらえること
  • 生成AI に任せられること、人が残るべきこと
  • かかった時間と費用、途中でつまずいた10のこと

目次

用語ミニ辞典

本文は正式な用語で書いています。なじみのない言葉は、先にこちらをご覧ください。

用語意味
Claude CodeAnthropic 社の生成AI。指示を受けて、プログラムを書く・動かす・テストするところまで自分で進める
設計書「こう動いてほしい」を日本語でまとめた文書。今回は、今の Excel マクロから AI に起こしてもらい、4つのファイルに分けた
合格の条件「この前提で、この操作をしたら、こうなれば合格」を1件ずつ並べた表。開発の言葉では受け入れ条件と呼ぶ
単体テスト・結合テスト部品1つずつが正しいかを試すのが単体テスト、部品を組み合わせて通しで試すのが結合テスト
E2E テストブラウザーを自動で操作して、人と同じように画面から試すテスト
配備(デプロイ)作ったシステムをクラウドに置いて、社員が使える状態にすること
モック本物の代わりに使う部品。テストのたびに本物のメールや会議の招待が飛ばないようにする

その前に:この方法が向く業務、向かない業務

先に正直なことを書きます。どんな Excel でもシステムにすべき、というわけではありません。

Excel のままでよいシステムにすると効く
使う人1〜2人部署をまたいで数人以上
更新月に数回毎日、複数の人が同時に
権限全員が全部見てよい項目ごとに見せる人を分けたい(給与など)
つながる先なしMicrosoft 365(Teams の会議、SharePoint など)
マクロ作った人がいて、今後も直せる作った人しか直せない、または作った人がもういない

わたしたちの採用管理は、右の列にほぼすべて当てはまりました。採用担当・社長・総務・情シスの4つの役割が同じ候補者を扱い、給与は社長と総務にしか見せたくありません。面談の招待も Teams で送りたい、という要望がありました。

⚠️ 「全部を AI で」は、うまくいきません。
この記事の方法でも、会社の権限の設定、業務のルールの決定、本物での最終確認は人が行います。AI が作ってくれるのは「決まったことを、動くものにする」部分です。何を決めるかは、人の仕事として残ります。

全体像と、先に知らないと後悔する4つのこと

Before と After はこうなります。

Excelマクロで管理していたときと、業務システムにした後の比較。ファイルの共有・同時編集・権限・Teamsとの連携が変わる

流れは4つの Part に分かれます。上のレーンが人の作業、下のレーンが AI の作業です。2つのレーンにまたがる手順は、人と AI が一緒に進めます。

脱Excelの10の手順。今のExcelマクロからAIが設計書を起こし、人が確かめる。作る・テストする・配備するはAIが進め、仕様変更は設計書の赤字でAIに渡す

始める前に知っておきたかったことは、次の4つです。

  1. 設計書は、一から書かなくて大丈夫です。 今の Excel マクロを AI に読ませれば、シートの項目とマクロの処理から設計書を起こしてくれます。人は、AI の質問に答えて中身を確かめます
  2. 正本は設計書で、コードはそれに追いつく側です。 仕様を変えたいときに直すのは、いつも設計書です。プログラムを直接直させると、設計書とコードがずれ始めます
  3. 合格の条件が、品質を決めます。 「便利に」ではなく「期日の翌日に赤くなる」のように書きます。AI はこれを自動テストに変えて、全部が合格するまで直します
  4. 権限まわりは、人が最後まで持ちます。 管理者の同意やパスワードの登録は、AI には任せません。任せようとしても、AI 側の安全の仕組みが止めます

この方法の要:設計書を直すと、コードが追いつく

Excel マクロが属人化するのは、仕様がコードの中にしかないからです。何をしているかを知るにはマクロを読むしかなく、直せるのは読める人だけになります。

この方法では、仕様の正本を設計書に移します。コードは、設計書と合格の条件に合わせて AI が作るものになります。

Excelマクロと今回のやり方で、要望が出てから使えるようになるまでの流れを比べた図。今回のやり方では、人が直すのは設計書だけで、コードとテストはAIが作り直し、合格の条件で自動テストする

観点Excel マクロ設計書が正本
仕様がある場所マクロのコードの中日本語の設計書
要望が出たときに直すものコード(作った人が直す)設計書(読める人なら誰でも直せる)
直したあとの確かめ方人が目で確かめる合格の条件を自動テストで全件流す
設計書とコードのずれ起きても気づけないテストが落ちるので気づける

わたしたちは、利用者の声16件を設計書に赤字で書き足し、AI に「赤字を全部反映して」と頼みました。AI は約3時間で8つの変更をコードとテストに反映し、配備まで済ませました。人の修正の指示は0回で、プログラムの差分は誰も読んでいません。

ただし、追いつくのは設計書と合格の条件に書いたことだけです。書いていない点は、AI が補って「こう決めた」と記録に残します。人はその記録を読み、必要なものを設計書に書き戻します。こうしておけば、設計書とコードはずれません。

Part 1|準備(手順1〜2)

手順1:用意するものをそろえる

  • Claude Code:生成AI の本体。月額のプランか、使った分だけの支払いで使える
  • GitHub:設計書とプログラムを置く場所。変更の履歴が残る
  • 動かす場所:わたしたちは Microsoft Azure を使った。社内で試すだけなら、手元の PC でも動く
  • 情シスの協力:Microsoft 365 とつなぐ場合だけ、管理者の設定が数回いる

手順2:AI が作業する場所を決める

  • AI は長い時間、ひとりで作業する。わたしたちはクラウドに作業用のパソコン(仮想マシン)を1台用意した
  • 作業用のパソコンは、動かしている間だけ料金がかかる。わたしたちの実績では1時間あたり約23円
  • AI に渡すものは、設計書を置いた場所と、作業のルールを書いた指示書の2つ
  • 指示書には「設計書は変えない」「迷ったら記録を残して進む」「決められないことは人に聞く」を書いた

Part 2|今の Excel マクロから設計書を起こす(手順3〜5)

脱Excelでは、「新しいシステムの設計書を書いてください」と担当者に頼んでも、まず進みません。日々の業務で手一杯ですし、何を書けばよいかもわからないからです。そこでわたしたちは、今動いている Excel マクロそのものを、設計書の材料にしました。 マクロには、業務のルールがすでに書き込まれているからです。

手順3:今の Excel マクロを、AI に読み込ませる

  • ブック(シート・列・入力規則・マクロのコード)を、そのまま AI に渡す
  • あわせて、利用者の声(困っていること、欲しい機能)も渡す
  • 担当者に新しく書いてもらうものは、ここでは何もない
  • 実データが入っているブックは、個人情報を架空の値に置き換えてから渡す

手順4:AI に設計書を起こしてもらい、人は質問に答える

  • AI は、シートの項目とマクロの処理を読み解いて、次の4つのファイルにまとめた
ファイルAI がまとめた中身量
要件何のためのシステムか、誰が使うか約130行
業務のルールステージの順番、必須の項目、誰が進められるか、日付の数え方約220行
基本の設計画面の一覧、役割ごとの権限の表、決めた設定の値約170行
合格の条件「前提・操作・結果」の組127件
  • わたしたちの場合、選考から入社手続きまでが15のステージに整理された
  • ルールは、例を添えた1文ずつの形になる

期日の超過は、期日の翌日から扱う。例:返送期日が 2026-10-10 なら、2026-10-11 から超過とする。

  • マクロだけでは決めきれない点や、矛盾している点は、AI が質問の一覧にして返してくる
  • 人の作業は、その質問に「そのままでよい」「こうしてほしい」と答えること
  • すぐに決められない値は「未定」と答えればよい。AI は仮の値で進め、あとで改めて聞いてくる

手順5:合格の条件も AI に下書きしてもらい、人が承認する

  • 合格の条件も、設計書から AI が1件ずつ下書きする
- id: AC-149
  前提: 日程調整のステージで、研修日時が入力済みの候補者
  操作: 採用担当者が「進める」を押す
  結果: 次のステージへ移る。履歴に操作した人が残る
  • うまくいく場合(正常)だけでなく、断られる場合(異常)も入れてもらう。例:情シスの人が給与を見ようとすると断られる
  • 人は一覧を読み、業務の実態と違うものだけ直してもらってから承認する
  • 承認した条件は、作る側の AI が変えてはいけないことにした

Part 3|AI に作らせる(手順6〜8)

手順6:AI に「設計書どおりに作って、条件を全部合格させて」と頼む

  • 指示はこの1文と、設計書の場所だけ
  • あとは AI が自分で計画を立て、作業を小分けにして進める
  • 仕様にないことに出会うと、AI は補って「こう決めた」を記録に残す。止まらずに進むための工夫
  • 人は、記録をあとでまとめて読み、違えば直す

手順7:AI がコーディングから結合テストまで回す

  • AI は、作るたびに次の3種類のテストを自分で書いて、自分で流した
テスト何を確かめるか件数
単体テスト・結合テストルール1つずつ、画面とデータベースを通した流れ172件
E2E テストブラウザーを自動で操作し、PC とスマートフォンで実際にサインインして使う34件
合格の条件127件のそれぞれに、対応する自動テストがあるか127件すべて合格
  • テストが落ちると、AI は原因を調べて直し、もう一度流す。人は結果の表を見るだけでよい
  • システム開発の言葉でいうと、コーディングから単体テスト、結合テストまで(C/UT〜IT)を AI が担当した

手順8:配備して、人が画面で確かめる

  • AI がクラウドに配備し、配備の後にも E2E テストを自動で流す
  • 人は、できあがった画面を実際に触る
  • 気になる点は、プログラムを直させるのではなく、設計書に書き足してもらう(次の Part)

Part 4|仕様変更は設計書を直すだけ(手順9〜10)

使い始めると、必ず要望が出ます。わたしたちの場合は、利用者の声が16件と、担当者のレビューの結果がありました。

手順9:要望を伝えて、設計書に赤字で書き足してもらう

  • 利用者の声やレビューの結果を AI に渡し、設計書のどこが変わるかを赤字で書き足してもらう
  • 人は、赤字の箇所だけを読んで確かめる

  • 変えた行に印を付ける(GitHub では色が使えないので、行の頭に赤い四角を付けた)

  • 例として、次のような要望が赤字になった
  • 一覧は新しい順に並べてほしい
  • 新卒の入社日には、4月1日を自動で入れてほしい
  • 面談の招待を、Teams で本当に送ってほしい
  • 履歴書は SharePoint に置いて、リンクで開きたい
  • 合格の条件も、変わる分を足してもらう(今回は76件から127件に増えた)
  • 人が読める版の仕様書にも、同じ赤字を入れた。リリースが済んだら黒字に戻して版を上げる

手順10:AI に「赤字を全部反映して」と頼む

  • AI は約3時間で、8つの変更をまとめて作り、テストし、配備した
  • この間、人の修正の指示は0回。人がしたのは、着手の合図と、設計書を更新したことの連絡だけ
  • 人が見るのは、設計書の赤字と合格の条件の結果だけ。プログラムの差分は読んでいない

どこまで AI にできて、どこからは人か

一番伝えたいのがここです。

AI に任せられたこと人がやったこと
今の Excel マクロから設計書を起こし、矛盾や抜けを質問にする質問に答えて、業務のルールを決める(誰が、何を、いつまでに)
プログラムを書く合格の条件を読んで承認する
テストを書いて、全部合格するまで直す決めの値を出す(担当者、面談の長さ、給与の初期値など)
クラウドへの配備と、配備後の自動テストMicrosoft 365 の管理者の同意、Exchange の範囲の設定
手順書と作業の記録を残すパスワードや秘密の値の登録、多要素認証のあるアカウントの操作
仕様にない点を補って記録するTeams の会議室を作る(自動で作る口がない)
失敗の原因をログから調べる本物の会議の招待を1回だけ送って確かめる

人に残るのは、次の3つに集約されました。

  • 決めること:業務のルールや値は、会社が決めること。AI は案を出すが、決めるのは人
  • 権限を渡すこと:管理者の権限やパスワードは、必要な分だけ人が渡す
  • 本物で確かめること:テストはモックで回し、本物は人が見ている前で1回だけ試す

かかった時間と費用

期間やったこと時間
1日目より前今の Excel マクロから設計書と合格の条件を起こす(AI が起こし、人が確かめる)半日ほど
1日目の夕方〜夜中AI が作る・テストする・配備する約10時間半
2日目の午前人が画面を触り、AI の質問に答える数時間
2日目の昼〜夕方利用者の声を設計書に反映し、AI が作り直す約3時間

AI が作っている約10時間半のあいだ、人がしたのは質問への回答と、権限の設定の手伝いです。夜中は AI がひとりで進めていました。

項目金額根拠
生成AI(Claude)の利用料約170ドル(約2.5万円)Claude Console の利用額。作る AI の分で、初版と仕様変更1回を含む。1ドル150円で換算
クラウドの利用料(システム)月1万円前後(見込み)アプリのサーバー約2,000円、データベース約3,500円など
AI の作業用パソコン1時間あたり約23円作っている期間だけ動かす
人が同じものを作った場合約23人月(見積もり)工程ごとの積み上げ(下の表)。PM・品質管理の15%を含む

人が同じものを作った場合の見積もりの内訳です。量は、できあがったものから数えました。

工程人日人月主な中身
要件定義402.0現行の Excel マクロの分析、ヒアリングと決定(36問)、利用者の声の反映
基本設計753.8画面12と画面の共通の決まり、業務ルール84、エンティティ15、権限表、クラウドと認証の構成、外部連携、受け入れ条件137件
詳細設計572.9画面ごとの設計、バッチ(自動削除・期日・通知)、API、外部連携、データベース、セキュリティ
製造・単体テスト1407.0Java 約12,500行、画面のテンプレート26、データベースの変更8本、クラウドの設定、自動配備の仕組み3本
結合テスト452.3テストの設計・実施・修正(自動テスト178件に相当)
総合テスト301.5画面の自動テスト34件(PC とスマートフォン)、性能(1,000件)、権限(4つの役割)、本物の Microsoft 365 との結合
利用者の確認の支援100.5利用者の確認の支援と修正
移行・リリース100.5本番の環境と認証の設定、手順書
小計40720.4
PM・品質管理(15%)613.1
合計46823.4

別の方法でも確かめました。アプリ本体のプログラム約1.26万行(テストのコード・空行・コメントを除く)を、IPA「ソフトウェア開発分析データ集2022」の新規開発の生産性の中央値 3.76行/人時(1人月160時間で約600行/人月)で割ると、約20人月です。PM・品質管理を除いた小計の20.4人月と、ほぼ一致します。

合わせると、人が作れば約23人月の開発を、AI が約14時間・約3万円で作ったことになります。人月は見積もりで、実際にかかった工数ではありません。

できあがったシステムは、候補者1,000件あまりのデータで、一覧が0.5秒台で開きました。

つまずきとFAQ編(10問)

特に大きかった3つを、先に図にまとめます。

脱Excelでつまずいた3つの落とし穴と回避策。管理者の同意、自動テストの招待、本物での保存の失敗

仕様編

Q1. AI が、仕様にないことを勝手に決めてしまいませんか?

決めます。ただし、必ず記録に残ります。わたしたちの仕様変更の1回分だけで、「仕様にないので、こう決めた」という記録が49件ありました。人は記録をまとめて読み、違うものだけ設計書に書き足して直させます。止まって聞かれるより、進めてもらってあとで直すほうが、全体は早く進みました。

Q2. 途中で要望が変わったら、作り直しになりますか?

なりません。要望を AI に伝えて設計書を赤字で直してもらい、合格の条件も足したうえで、「赤字を反映して」と頼むだけです。わたしたちは、所属部門の項目をなくす変更を途中で入れましたが、AI は他の変更と一緒に、画面・データ・テストをまとめて直しました。

権限編

Q3. AI に管理者の権限を渡しても大丈夫ですか?

渡さないのが基本です。わたしたちは、AI が自分の使うアカウントに役割を足そうとしたとき、AI 側の安全の仕組みが「権限の付与」として止めました。この手の操作は人がやる、と割り切るのが安全です。

Q4. Microsoft 365 の「管理者の同意」を押したら、どうなりますか?

押し方によっては、アプリが全社員の予定表を読み書きできる状態になります。わたしたちも一度、面談の招待のために予定表の権限に同意してしまい、数分後に取り消しました。採用担当者の予定表だけに絞りたい場合は、Entra ID では同意せず、Exchange Online の「アプリ向けの RBAC」で範囲を限ります。

テスト編

Q5. 自動テストのたびに、本物の会議の招待が飛びませんか?

そのままだと飛びます。自動テストは同じ環境で1日に何度も流れるので、チームの予定表がテストの招待で埋まってしまいます。わたしたちは、自動テストはモックで流すと決めました。本物の招待は、人が見ている前で「テスト」とわかる件名・深夜の時間帯で1回だけ送り、あとで取り消しました。

Q6. 本物で1回送ったら「value too long for type character varying(64)」で500エラーになりました

わたしたちが実際に出したエラーです。招待そのものは Microsoft 365 側で作られたのに、アプリが予定の ID を保存する欄が64文字しかなく、保存で失敗しました。モックの ID は短いので、自動テストでは見つかりません。AI に伝えると、欄を広げて、保存に失敗したら作った予定を取り消す作りに直すまで、1時間かかりませんでした。「最後に本物で1回」は省かないほうがよいです。

Q7. E2E テストが「Timeout 30000ms exceeded」でたまに落ちます

わたしたちも何度か出ました。同じ内容をもう一度流すと、どれも通りました。原因がはっきりしないものもありましたが、配備の直後にアプリが再起動しているところへ操作が重なったものがありました。AI は、配備の手順に「再起動を待つ」ステップを足して、再発を減らしました。

迷子編

Q8. AI が作業の途中で、1時間止まっていました

AI が作業用のフォルダーの外にあるファイルを読もうとして、人の許可待ちになっていました。夜中だったので、誰も気づけませんでした。指示書に「作業用のフォルダーの中だけを使う」と書いておくと防げます。

Q9. AI の報告の数字が間違っていました

ありました。AI がテストの件数を報告したとき、古い結果のファイルまで数えてしまい、実際より多い件数を書いていました。AI 自身が途中で気づいて訂正しています。報告の数字は、テストの結果の表や記録と突き合わせて確かめるのが確実です。

Q10. Teams の会議室も AI に作ってもらえますか?

作れませんでした。Teams のチャネルの会議は、プログラムから作る口が用意されていないためです。人が Teams で面談用の会議室を2つ作り、参加の URL を AI に渡しました。こうした「人の手でしか作れないもの」は、AI が手順書にまとめて残してくれます。

まとめ

  • この方法の要は、設計書を直すとコードとテストが追いつくことです。人が持ち続けるのは設計書だけです
  • 脱Excelの設計書は、今の Excel マクロから AI に起こしてもらえます。担当者が一から書く必要も、プログラミングのスキルも要りません
  • 合格の条件を具体的に書けば、生成AI がコーディングから結合テストまで回し、全部を合格させます
  • 仕様変更は、要望を伝えて設計書を赤字で直してもらい、AI に反映させるだけです
  • 人の仕事は「決めること」「権限を渡すこと」「本物で1回確かめること」に絞られます
  • ツールを買う予算がなくても、手元の Excel マクロを出発点に、自分たちの業務システムを作れます

参考リンク

AI成熟度診断(無料)で、自社の現在地を測れます

当社は「AI成熟度診断」を無料で提供しています。5問・約5分、当てはまるカードを選ぶだけです。判定は経済産業省・IPAのDX推進指標と同じゲート方式で行います。

  • AI活用の成熟度を5段階で判定します
  • 8つの観点のどこが弱いかを図で示します
  • 次にやるべきことを1つに絞ってお伝えします

無料でAI成熟度診断をはじめる

入力はメールアドレス・会社名・業種・従業員規模の4項目。結果はメールでお送りします。

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です