エラーが発生した場合の対応とデバッグを指示するプロンプト
生成したコードがエラーとなったときは、AIに自己チェックさせることで効率よく対処できるケースがある。
■実行時エラーをAIに対処させるプロンプト
【エラー修正プロンプトの書き方】
先ほど作成していただいたVBAコードでエラーが発生しました。
#エラー内容:
実行時エラー ‘1004’:
アプリケーション定義またはオブジェクト定義のエラーです。
#エラー箇所:
Range(“A1:E” & lastRow).AutoFilter Field:=2, Criteria1:=”完了”
#状況:
「タスク管理」シートでフィルター適用時に発生
データは1行目にヘッダー、2行目以降にデータが入力されています
修正したコードを教えてください。
【デバッグ用プロンプト】
以下のVBAコードにデバッグ機能を追加してください:
- 処理の進行状況をイミディエイトウィンドウに表示
- 主要な変数の値をログ出力
- ステップ実行しやすいようにコメントを充実
- エラー発生時の詳細情報を記録
[既存のコードを貼り付け]
■ログ出力を自動で生成するプロンプト
処理の記録を残すようにしたい場合は、プロンプトでログ出力のマクロ作成を指示しよう。
【ログ機能付きマクロのプロンプト】
以下の機能を持つVBAマクロを作成してください:
#基本機能:顧客データの一括更新処理
#ログ機能:
- C:\Logs\process_[日時].txtにログ出力
- 開始・終了時刻、処理件数、エラー詳細を記録
- 1週間以上古いログファイルは自動削除
- ログファイルサイズが10MBを超えたら新しいファイルを作成
#処理内容:
「顧客マスタ」シートの住所データを正規化し、郵便番号を自動補完
AIで生成したマクロの運用とメンテナンス

AIで生成したマクロ(VBAコード)や、指示出しに利用したプロンプトは、それ自体を適切に運用・管理する必要がある。
■マクロ自動化に使用したプロンプトは分類・共有して管理
生成AIではプロンプトが異なると出力結果が異なる。業務で使用する場合はプロンプトを再利用可能な形で保存することが大切だ。
1.業務別にプロンプトを分類する
・売上分析系
・データ集計系
・レポート生成系
・システム連携系
2.プロンプトのテンプレート作成
以下のようにプロンプトのテンプレートを作成し、保存する
#テンプレート名:データ集計マクロ
#目的:[具体的な集計内容]
#対象シート:[シート名]
#集計条件:
- 期間:[開始日] ~ [終了日]
- 分類:[分類項目]
- 出力形式:[表形式/グラフ/レポート]
#制約条件:
- エラーハンドリング必須
- 処理完了メッセージ表示
- [その他の条件]
3.定期的なプロンプトの改善
プロンプトに改善が必要な場合は、「改善用プロンプト」を活用すると良い。
【プロンプト改善用のプロンプト】
以下のプロンプトをより効果的に改善してください:
#現在のプロンプト:
[既存のプロンプト内容]
#改善点:
- より具体的な指示
- エラーケースの考慮
- コード品質の向上
- 保守性の向上
改善されたプロンプトを提示してください。
■プロンプトとコードのバージョン管理
改善したプロンプトや、プロンプトテンプレート、生成したコードはバージョンを管理しよう。プロンプトを改善するだけでなく、生成したコードを改良する場合もあるため、コードごとにバージョンを記録できるようにすると良いだろう。
【プロンプト履歴管理】
#プロンプト管理表
日付:2024/08/22
バージョン:v1.0
用途:月次売上集計
プロンプト:[保存したプロンプト内容]
生成コード:[ファイル名またはコードの一部]
改善点:[次回への課題]
【コード改良プロンプト】
以下のVBAコードを改良してください:
#現在のバージョン:v1.0
#問題点:
- 処理速度が遅い(データ量やコードの書き方によって秒単位から数分かかる)
- メモリ使用量が多い
- エラーハンドリングが不十分
#改良要求:
- 処理速度の向上(配列処理の活用)
- メモリ効率の改善
- 堅牢なエラーハンドリング
- コードの可読性向上
[既存のコード]
【バージョン確認機能の追加】
作成するVBAコードに以下の機能を追加してください:
- コード内にバージョン情報を定数で定義
- 実行時にバージョンを表示する関数
- 更新履歴をコメントとして記載
- Excelバージョンの確認と参照設定の確認機能
※情報は万全を期していますが、正確性を保証するものではありません。
文/編集部







DIME MAGAZINE











