社内SEをやっていると、Excelを使ったデータ加工や集計、レポート作成は避けて通れません。「この関数、前も調べたな…」「またVBA書くのか」と感じたこと、一度はあるはずです。
そこで試してほしいのがChatGPTとの組み合わせです。やりたいことを日本語で伝えるだけで、関数もVBAも生成してくれます。自分が実際に使ってみて、特に「調べながら作る」という無駄な往復が減ったのが大きかったです。
この記事では、社内SEがすぐ使えるプロンプト例と出力例をセットで紹介します。
ChatGPTはExcel業務のどこまでカバーできるか
まず全体像を整理しておきます。ChatGPTが対応できる主なExcel作業は以下のとおりです。
- IF・XLOOKUP などの複雑な関数の生成
- VBAマクロの作成
- データ整形(余分なスペース削除・文字コード統一など)
- エラー原因の分析(#N/A、#VALUE! など)
- CSV・ログデータの加工手順の提示
社内SE業務は「正解がわかっていても調べる時間がかかる」作業が多い。ChatGPTはその「調べる時間」を削るのが得意です。
Excel関数をChatGPTで自動生成する
複雑なIF関数(ネスト)を一発で作る
IF + AND / OR の組み合わせは、条件が増えるほど自分で書くと凡ミスが起きやすい場所です。
プロンプト例:
A列が「営業」で、B列が100以上なら「対象」と表示するExcel関数を作成してください。
出力例:
=IF(AND(A1="営業", B1>=100), "対象", "")
条件が3つ・4つになってもChatGPTに任せれば正確に生成できます。「AND条件とOR条件を混在させたい」といった追加要望も日本語で続けて伝えればOKです。
XLOOKUPで別シートからデータ検索
VLOOKUPよりXLOOKUPの方が実務では使いやすい場面が多いですが、引数の順番や「見つからない場合の処理」を毎回確認している方も多いはず。
プロンプト例:
商品コードから商品名を別シートから取得する関数を作成してください。
出力例:
=XLOOKUP(A2, 商品マスタ!A:A, 商品マスタ!B:B, "未登録")
第4引数で「未登録」を返すことで、#N/Aエラーも回避できています。VLOOKUPと違い、検索列が左端でなくても動くのもXLOOKUPの強みです。
日付・期限管理の関数
契約管理やタスク管理で「期限が近いものを目立たせたい」ケースに使えます。
プロンプト例:
今日から7日以内なら「期限間近」と表示する関数を作成してください。
出力例:
=IF(A1-TODAY()<=7, "期限間近", "")
条件付き書式と組み合わせてセルを赤くする、という使い方も一緒にChatGPTに聞けば対応してくれます。
データ整形・文字処理
地味な割に、やらないとデータが壊れる作業です。
プロンプト例:
余分なスペースを削除する関数を教えてください。
出力例:
=TRIM(A1)
全角・半角の混在が問題になる場合はこちら:
=ASC(A1) ' 全角→半角に変換
「TRIM後さらにASCを噛ませたい」といった組み合わせも、プロンプトに書けばネストした関数を出してくれます。
関連記事:ChatGPTで業務効率化する方法|社内SEがすぐ使える具体例5選
VBA・マクロをChatGPTで生成する
自動集計マクロ
プロンプト例:
A列の合計をB1に出力するVBAを書いてください。
出力例:
Sub 集計()
Dim lastRow As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
Range("B1").Value = WorksheetFunction.Sum(Range("A1:A" & lastRow))
End Sub
lastRow で末尾行を動的に取得しているのがポイントで、データ件数が変わっても使い回せます。
空白行を一括削除するマクロ
データ整形でよくある「空白行が混在している」問題は手作業では地味につらい。
プロンプト例:
空白行を削除するVBAを作成してください。
ChatGPTが出力するコードは通常、末尾から逆順にループして削除する方式になっています(正順だと行がズレてバグる)。こういう落とし穴を踏まずに済むのが助かります。
ExcelからOutlookでメールを送信するマクロ
プロンプト例:
ExcelからOutlookでメール送信するVBAを書いてください。
月次レポートを自動送信したい、アラートメールを自動化したい、という用途に使えます。Outlookの参照設定が必要になる場合があるため、「Outlookオブジェクトライブラリを使う前提で」と補足するとより精度の高いコードが出ます。
⚠️ VBAは必ず実行前に確認してください。 ChatGPTが出力するコードは概ね正しいですが、環境依存の問題や想定外の動作が起きることがあります。バックアップを取った上でテスト実行するのが鉄則です。
実務で使える応用例
CSVデータの加工
「不要な列を削除したい」「文字コードをShift-JISからUTF-8に変えたい」「フォーマットが月ごとに微妙に違う」といった悩みも、やりたいことを書けば関数・PowerQuery・Pythonなど複数の手段を提案してくれます。どれが自分の環境に合うか選べるのが便利です。
ログデータからの値抽出
例:
ログからIPアドレスだけ抽出したい
正規表現を使った抽出方法、LEFT/MID/FIND関数での対応、PowerQueryでの処理など、状況に応じた選択肢を複数出してくれます。
#N/A や #VALUE! などのエラー原因を調べる
例:
Excelで#N/Aが出る原因を教えてください
「検索値の型が一致していない」「末尾にスペースが入っている」など、よくある原因と確認手順をセットで出してくれます。自分でデバッグする時間が大幅に減ります。
使う前に知っておきたい注意点
社内データ・個人情報は入力しない
ChatGPTに実データをそのまま貼るのはNGです。社員名・顧客情報・システム構成などは必ずマスクしてください。「A列に氏名が入っている」という表現で十分なケースがほとんどです。
出力結果は必ず自分の目で確認する
特にVBAはテスト実行前のコードレビューを省かないでください。「動いた」と「正しく動いた」は別物です。
まとめ:「調べながら作る」時間をゼロに近づける
ChatGPTを使ってみて実感したのは、「わかってるけど調べないといけない」作業がなくなるということです。関数の引数・VBAの書き方・エラーの対処法、これらを毎回検索する時間が積み重なると、1週間でかなりのロスになります。
まずは「この関数、毎回調べてるな」というものをひとつChatGPTに投げてみてください。慣れてきたら、VBAやデータ処理の自動化まで活用範囲を広げていくのがおすすめです。

