ExcelをAIで自動化する方法|関数・マクロ・データ整形の頼み方と注意点
Excelの繰り返し作業をAIで効率化したい人向けに、関数・VBAマクロ・データ整形の頼み方と4つの方法の使い分け、AIに渡してよいデータの線引きまで整理して解説します。
目次
- この記事でわかること
- ExcelをAIで自動化するとはどういうことか
- 「AIが作業する」と「AIが手順を書く」は別物
- AIでExcel作業を自動化する4つの方法
- 方法1: 関数・数式をAIに作ってもらう
- 方法2: VBAマクロをAIに書いてもらう
- 方法3: データをAIに渡して集計・整形してもらう
- 方法4: Excelに組み込まれたAI機能を使う
- 4つの方法をどう使い分けるか
- AIに渡してよいデータ・渡してはいけないデータ
- 勤務先のルールが最優先
- データを渡さずに相談する工夫
- AIに頼むときの伝え方のコツ
- 列の構成を伝える
- 実例を1〜2行見せる
- 条件は分けて書く
- エラーはそのまま貼る
- AIが書いたコードとどう付き合うか
- 自動化しない方がよい作業もある
- うまくいかないときの確認ポイント
- まとめ
この記事でわかること
- ExcelをAIで自動化するといっても、方法が一つではないこと
- 関数・マクロ・データ整形・Excel内蔵のAI機能という4つの方法と、その使い分け
- AIに渡してよいデータと、渡さない方がよいデータの線引き
- AIに作業を頼むときの伝え方のコツ
- 自動化しない方がよい作業の見分け方
ExcelをAIで自動化するとはどういうことか
Excelの作業を効率化したいと考えたとき、「AIで自動化する」という言葉には実は二つの意味が混ざっています。ここを分けて考えると、自分がやりたいことに合う方法を選びやすくなります。
「AIが作業する」と「AIが手順を書く」は別物
一つは、AIがデータそのものを処理するという意味です。データを渡して「部署ごとに合計して」と頼み、結果を受け取る使い方がこれにあたります。
もう一つは、AIが作業の手順を書いてくれるという意味です。この場合、実際に処理をするのは今までどおりExcelで、AIは関数やマクロといった「手順」を用意する役割になります。
違いは、同じ作業を繰り返すかどうかに現れます。一度きりの集計なら前者が早く、毎月同じ処理を繰り返すなら後者の方が向いています。手順さえ手元に残れば、次回からはAIに頼まなくても同じ作業ができるからです。
AIでExcel作業を自動化する4つの方法
方法1: 関数・数式をAIに作ってもらう
「やりたいこと」を日本語で説明して、関数を書いてもらう方法です。関数名を覚えていなくても、「A列の日付が今月のものだけ、C列の金額を合計したい」のように伝えれば形にしてもらえます。
4つの中では最も手軽で、うまくいかなくてもセルの内容を消せば元に戻せるため、最初に試しやすい方法です。
方法2: VBAマクロをAIに書いてもらう
複数の手順をまとめて実行したい場合は、VBA(Excelに組み込まれたプログラミング機能)のコードを書いてもらう方法があります。「シートを分割して別ファイルに保存する」「決まった書式に整える」といった、関数だけでは難しい作業を扱えます。
ただし、マクロは実行するとファイルの中身を書き換えます。元に戻す操作が効かないこともあるため、必ずコピーしたファイルで試してください。
方法3: データをAIに渡して集計・整形してもらう
表やファイルをAIに渡して、集計・分類・並べ替えなどを直接やってもらう方法です。Excelの機能を覚える必要がなく、「この表から何が言えるか」といった相談もできます。
一方で、この方法は手元のデータが外部のサービスへ渡るという点が他と大きく異なります。後述する線引きを確認してから使ってください。
方法4: Excelに組み込まれたAI機能を使う
Microsoft 365には、Excelの画面からそのまま使えるAI機能が用意されています。別のサービスへ切り替えずに済むのが利点です。
ただし、使える機能は契約しているプランによって異なり、内容も更新されていきます。何ができるかは公式の案内で確認してください。この記事では、変わりやすい提供条件には踏み込まず、考え方の部分を中心に説明します。
4つの方法をどう使い分けるか
どれが優れているということではなく、次の3つの軸で選ぶと迷いにくくなります。
| 方法 | 手軽さ | データが外部に渡るか | 繰り返し使えるか |
|---|---|---|---|
| 関数を作ってもらう | 高い | 渡さずに相談できる | 手順が手元に残る |
| マクロを書いてもらう | 中くらい | 渡さずに相談できる | 手順が手元に残る |
| データを渡して処理してもらう | 高い | 渡ることになる | 毎回頼む必要がある |
| Excel内蔵のAI機能 | 高い | 契約形態による | 機能による |
整理すると、毎月繰り返す作業なら関数やマクロとして手順を手元に残す方法が向いています。一度きりの集計や、どう処理すべきか相談したい段階なら、データを渡す方法や内蔵機能が早いでしょう。
毎週・毎月同じ形で作る集計表を、Claude CodeとPythonで自動作成するところまでの手順はExcelの定型レポートを自動化する手順で紹介しています。
AIに渡してよいデータ・渡してはいけないデータ
事務や経理の作業では、顧客情報や社内の数値を扱う場面が多くあります。ここは効率化の話とは別に、先に確認しておきたい部分です。
勤務先のルールが最優先
多くの会社では、外部のAIサービスに業務データを入力してよいかについて何らかの方針を定めています。個人で使っているサービスは業務利用を認めていない、という運用も珍しくありません。まず勤務先のルールを確認してください。 この記事の内容より、勤務先の方針が優先されます。
一般的に、次のような情報はそのまま入力しない方が安全とされています。
- 顧客や従業員の氏名・住所・連絡先などの個人情報
- 未公開の売上・原価・見積といった数値
- 取引先との契約条件
- パスワードやログイン情報
データを渡さずに相談する工夫
実は、データそのものを渡さなくても、やりたいことのほとんどは相談できます。
- 列の構成だけを伝える: 「A列に日付、B列に部署名、C列に金額が入っています」と説明すれば、 関数もマクロも作ってもらえます
- 値をダミーに置き換える: 実際の顧客名を「A社」「B社」に、金額を適当な数字に置き換えた数行を 見せれば、形式は十分に伝わります
- エラーの内容だけを伝える: エラーメッセージ自体には、多くの場合、社内の情報は含まれていません
方法1・方法2(関数とマクロ)が扱いやすいのは、この「データを渡さずに済む」という点が大きな理由です。
列名と型・架空のサンプルだけを伝えて、2つのExcelファイルの違いを出すPythonのコードを作ってもらう例は、2つのExcelファイルを比較する方法で紹介しています。
AIに頼むときの伝え方のコツ
うまくいかないときの原因は、AIの性能よりも前提が伝わっていないことにある場合がよくあります。
列の構成を伝える
「金額を合計して」だけでは、どの列のことか分かりません。「A列が日付、C列が金額です」と一文添えるだけで、そのまま使える関数が返ってきやすくなります。
実例を1〜2行見せる
日付が「2026/09/01」なのか「2026年9月1日」なのかで、必要な処理は変わります。実際の値に近い形の例を数行見せると、行き違いが減ります(前述のとおり、中身はダミーに置き換えて構いません)。
条件は分けて書く
「今月分で、かつ部署が営業で、キャンセルを除いた合計」のように条件が複数あるときは、箇条書きで分けて伝えると正確になります。
エラーはそのまま貼る
エラーが出たら、要約せずにメッセージをそのまま貼り付けてください。何行目で止まったかが分かると、修正が早くなります。
AIへの指示の出し方そのものについては、ChatGPTを仕事で使う方法でも基本的な考え方を紹介しています。
AIが書いたコードとどう付き合うか
AIを使うと、自分では書けなかったマクロが短時間で手に入ります。ただし、ここには注意しておきたい点があります。
中身が分からないまま、業務の仕組みとして残してしまうことです。動いているうちは問題になりませんが、扱うファイルの形式が変わったときや、エラーが出たときに、誰も直せない状態になりがちです。
次のような使い方をしておくと、後で困りにくくなります。
- いきなり本番のファイルに使わず、コピーで試す
- 何をしているコードなのか、簡単な説明をAIに書いてもらい、ファイルに残しておく
- 一度に全部を任せず、小さい処理に分けて動作を確かめながら進める
- 自分が理解できる範囲を少しずつ広げる
処理が複雑になってきた場合は、ExcelのマクロよりもPythonなど別の方法が適していることもあります。学び方の選択肢についてはPythonを学ぶ方法で整理しています。自分だけで抱えるには大きくなってきた場合は、人に依頼するという選択肢もあります。判断の目安はExcel自動化は自作と外注どちらにすべきかで整理しています。
自動化しない方がよい作業もある
効率化の話では見落とされがちですが、自動化しない方がよい作業もあります。
- 頻度が低く、短時間で終わる作業: 月に一度・5分で終わる作業を自動化しても、作って直す手間の 方が大きくなることがあります
- 判断が必要な作業: 「この取引は例外扱いにするか」といった判断が混ざる作業は、仕組みにすると かえって危険です
- 例外が多い作業: 毎回フォーマットが違う資料は、自動化しても結局手直しが必要になります
- 間違いに気づけなくなる作業: 自動で出た数字をそのまま提出する運用は、確認の機会を失います
自動化に向いているのは、繰り返しが多く、手順が毎回同じで、結果を確認できる作業です。まずはそこから始めるのが現実的です。
うまくいかないときの確認ポイント
- 関数がエラーになる: 列の指定がずれていないか、日付や数値が文字列として入っていないかを確認します
- マクロが途中で止まる: 対象のシート名・ファイル名が実際と一致しているかを確認します
- 結果の件数が合わない: 空白行や、見た目は同じでも余分な空白が入ったデータが混ざっていないかを 確認します
- そもそも何を頼めばいいか分からない: 「今やっている手順」を箇条書きにしてAIに見せ、 どこを自動化できるか相談するところから始められます
なお、どのAIサービスを使うかで得意分野やファイルの扱いは変わります。違いについては主要生成AIツール比較で整理しています。
まとめ
ExcelをAIで自動化する方法は、大きく次の4つです。
- 関数・数式を作ってもらう(最も手軽・データを渡さずに済む)
- VBAマクロを書いてもらう(繰り返し作業向き・コピーで試す)
- データを渡して処理してもらう(一度きりの集計向き・データが外部に渡る)
- Excel内蔵のAI機能を使う(切り替え不要・提供条件は公式で確認)
選ぶ基準は「繰り返す作業かどうか」と「データを外部に渡してよいか」の2点です。そして、AIが出した内容を確認するのは最後まで自分の役割になります。
資料作成の効率化という観点ではAIで仕事のスライドを作る方法でも同じ考え方を扱っています。あわせてご覧ください。
よくある質問
ExcelのAI自動化はプログラミング知識がなくてもできますか?
関数や簡単なマクロを作ってもらうだけなら、プログラミングを書けなくても始められます。ただし、出てきた内容が正しいかを確認するのは自分の役割です。特にマクロは実行するとファイルの中身を書き換えるため、コピーしたファイルで試してから使うことをおすすめします。
AIが作った関数やマクロが動かないときはどうすればいいですか?
エラーメッセージをそのままAIに貼り付けて、「このエラーが出た」と伝えるのが近道です。あわせて、実際の列の構成(どの列に何が入っているか)と、うまくいかなかった具体例を伝えると、修正の精度が上がります。
会社のExcelファイルをAIにアップロードしても大丈夫ですか?
まず勤務先のルールを確認してください。顧客の氏名・連絡先などの個人情報や、未公開の経営数値・取引条件は、原則としてそのまま外部サービスへ入力しない方が安全です。ファイルを渡さなくても、列の構成だけを伝えたり、実際の値をダミーに置き換えたデータで相談したりする方法があります。
Excelの中だけでAIを使う方法はありますか?
Microsoft 365にはExcel内から使えるAI機能が用意されています。ただし使える機能は契約しているプランによって異なり、内容も変わっていくため、最新の提供状況は公式の案内で確認してください。
AIを使えばExcel作業をすべて自動化できますか?
できません。判断の基準が人によって変わる作業や、例外処理が多い作業、担当者の確認が前提になっている作業は自動化に向きません。また、月に一度・数分で終わる作業は、自動化の手間の方が大きくなることもあります。