「VBAを書いたことがないけれど、生成AIに頼めばマクロを作ってもらえるのでは?」と考える方は増えています。実際、生成AIにコード案を作ってもらうことはできますが、そのまま動くとは限りません。この記事では、生成AIにVBAを書いてもらうときの手順と、失敗しにくくする頼み方、使う前の注意点を整理します。
生成AIでExcel作業がどこまで自動化できるかの全体像は、生成AIでExcel作業はどこまで自動化できる?活用方法と注意点を解説で解説しています。
VBAそのものが分からない場合は、先にExcel VBAとは?できることと向いている作業を初心者向けに解説をご覧ください。
生成AIにVBAを書いてもらうときの基本の流れ
- 自動化したい作業を、手順にして書き出す
- ファイルのコピーを用意し、サンプルのデータで試す準備をする
- 生成AIに、条件をそろえて依頼する
- 出てきたコードを、コピーしたファイルで実行して確認する
- エラーが出たら、エラー内容を生成AIに伝えて直してもらう
- 期待どおり動いたら、別のデータでも確認してから使い始める
手順1:作業を手順にして書き出す
生成AIに頼む前に、今やっている作業を、人が操作する順番で書き出してください。たとえば、次のような形です。
- フォルダー内のCSVを1つずつ開く
- 1行目の見出しを除いて、データを1つのシートに貼り付ける
- 最後に、行数を数えて確認する
手順が書けない作業は、生成AIにも伝えにくく、うまく動くコードになりにくい傾向があります。自動化に向いている作業の見つけ方は、Excelで自動化しやすい業務10選が参考になります。
手順2:依頼するときに伝えたいこと
次の情報を伝えると、意図に近いコードが出やすくなります。
- Excelのバージョン(分かる範囲で)と、Windows・Macの別
- 対象のシート名・列の並び(実際の名前ではなく、例でかまいません)
- やりたい作業の手順(手順1で書き出したもの)
- 出力してほしい形(どのシートに、どの列に)
- 守ってほしいこと(元のデータは変更しない、など)
依頼文の例(架空のデータを使った例です):
ExcelのVBAで、同じフォルダーにある複数のCSVファイルを、1つのシートにまとめるマクロを作ってください。各CSVの1行目は見出しで、列は「日付」「担当」「金額」の3列です。まとめたシートの1行目に見出しを1回だけ入れ、2行目以降にデータを縦に並べてください。元のCSVは変更しないでください。Windowsで、Excelのバージョンは分かりません。初心者なので、コードにコメントで説明を入れてください。
手順3:コードを試すときの注意点
- 必ず、ファイルのコピーで試します(VBAの実行は、元に戻せないことがあります)
- 最初は、数行だけのサンプルデータで試します
- マクロを保存するファイルは、拡張子「.xlsm」にします
- コードの意味が分からない部分は、生成AIに「この行は何をしていますか」と聞きます
エラーが出たときの直し方
エラーが出たら、次の内容をそのまま生成AIに伝えて、直してもらいます。
- エラーメッセージの全文
- 黄色く表示された行(「デバッグ」を押すと分かります)
- 直前にやった操作と、期待していた動き
ただし、直してもらったコードが、必ず動くとは限りません。何度か直しても動かない場合は、作業の手順を簡単にして、依頼し直してみてください。動かないときの確認ポイントは、Excelマクロが動かないときの原因と確認ポイントにまとめています。
生成AIに頼むときの注意点
- 回答は必ず正しいとは限りません。動作は自分で確認します
- 社外秘の情報や個人情報、パスワードは、勤め先のルールに従い、依頼文やコードに含めません
- 仕事で使うファイルでは、集計結果や出力を、目で確認してから使います
- コードの内容を理解しないまま、重要なファイルで実行しません
- 会社のPCでは、マクロの利用が制限されていることがあります。社内のルールを確認してください
生成AIとVBAの、向き不向き
生成AIは、短いコードの下書きや、エラーの原因のヒント出しに向いています。一方で、複雑な業務や、入力の形式がばらばらな作業は、コードが長くなり、確認や保守の手間も増えます。標準機能や関数で足りる作業は、VBAを使わないほうが管理しやすいこともあります。
VBAを使わずに試したいとき
CSVをまとめる、PDF請求書を一覧にするなど、決まった作業であれば、ブラウザで使える無料ツールもあります。Excel自動化の無料ツールまとめで紹介しています。何から始めるか迷う場合は、Excel業務を効率化するなら何から始める?初心者向け6ステップロードマップも参考にしてください。
どの方法が合うか整理したい場合は、ココナラのExcel・VBAの困りごと相談もあります。ファイルやマクロを作成・修正するものではなく、考えられる対応方法と次に確認することを文章でお渡しするサービスです。購入は前提にしていません。
まずは、コピーしたファイルで、小さな作業を1つ試してみてください。
関数で対応できる作業は、AIにExcel関数を作ってもらう方法|頼み方と結果の確認ポイントで解説しています。
転記のようにVBA以外でも対応できる作業は、Excelの転記作業を自動化する方法|関数・Power Query・VBAの使い分けも参考になります。
マクロとVBAの違いは、マクロとVBAの違いとは?初心者向けに関係と始め方を整理で整理しています。
AIがあってもVBAの基本を知っておく意味は、生成AI時代にもVBAは必要?書く力より「読んで確かめる力」を整理で解説しています。


