【完全保存版】生成AIでラクラク書くVBAプログラミング:カテゴリ別プロンプトフレーズ100選

スポンサーリンク
アニメ風イラストで描かれたVBAプログラミングと生成AIの融合を表現したデジタルイメージ。Excel画面とキャラクターが並ぶ学習支援の視覚的ガイド VBA・マクロ

VBAプログラミングは、Microsoft Office製品(特にExcel)における自動化を実現するための強力な手段です。反復的な作業をマクロで自動化できれば、業務効率が飛躍的に向上します。しかし、文法やオブジェクトモデルの理解が不可欠なため、初心者がいきなりすべてを学ぼうとすると挫折しがちです。

そこで近年、注目を集めているのが生成AIの活用です。例えば「こういう動きをするマクロを作って」とAIにプロンプトを与えれば、完成度の高いコードやサンプルを提示してくれます。これにより、コードを書く時間を短縮できるだけでなく、生成されたコードを読むことで学習効果も得られます。

本記事では、VBAプログラミングを効率よく進めるためのプロンプトフレーズをカテゴリ別に合計100個ご用意しました。さらに、それぞれのプロンプトやキーワードが業務にどう役立つのかについても解説を加えています。今までVBAに苦手意識があった方でも、生成AIを活用すれば大きくハードルを下げられるはずです。ぜひ最後までご覧いただき、日々の業務に役立ててください。

アニメ風イラストで描かれたVBAプログラミングと生成AIの融合を表現したデジタルイメージ。Excel画面とキャラクターが並ぶ学習支援の視覚的ガイド

スポンサーリンク

カテゴリ一覧

今回ご紹介するプロンプトフレーズは以下の10カテゴリに分けています。各カテゴリごとにキーワードやビジネス活用のポイントを織り交ぜながら解説します。

  1. 【基本操作】
  2. 【ファイル操作】
  3. 【シート・セル操作】
  4. 【イベント・ユーザーフォーム】
  5. 【グラフ・表示関連】
  6. 【データ処理・自動化】
  7. 【エラーハンドリング・ログ出力】
  8. 【Outlookやメール連携】
  9. 【AccessやSQL連携】
  10. 【アドバンス機能・応用】

【カテゴリ1】基本操作

基本操作」はVBAプログラミングの入り口。セルへのアクセス、メッセージボックスの利用、条件分岐や変数の宣言方法など、まずはここを押さえておくことで他の処理にもスムーズに対応できます。

  • キーワード例: VBA基礎, MsgBox, InputBox, 変数, 条件分岐, イベント, グローバル変数
  • 業務活用メリット: こまめなメッセージ表示や値入力が必要な作業を自動化できる。単純な計算や確認を繰り返す事務作業が大幅に効率化。
  1. 「Excelの特定セル(A1)の値を取得してメッセージボックスで表示するVBAコードを書いて」
    ┗ セルの読み取りとメッセージボックスの表示を学ぶための基本プロンプト。
  2. 「Workbook_Openイベントで、自動的にメッセージを表示するマクロを教えて」
    ┗ ブックを開いたときに自動で動作するサンプル。ファイルオープン時の案内や警告が可能。
  3. 「Auto_Openマクロを使ってExcel起動時に処理を実行するコードを生成して」
    ┗ 開発環境によってはWorkbook_Openとほぼ同義。特定の処理を起動直後に走らせたい業務に便利。
  4. 「グローバル変数を宣言し、複数のモジュール間で値を共有するVBAサンプルを書いて」
    ┗ 複数のプロシージャやモジュールにまたがって同じ値を扱いたいときに役立つ。
  5. 「Excelのセルに今日の日付と時刻を表示し続けるリアルタイム時計マクロを書いて」
    ┗ 進捗管理やタイムスタンプが必要な業務で、自動更新される時計を作成可能。
  6. 「If文を使って、複数の条件を判定するサンプルコードをVBAで作って」
    ┗ 業務ロジックを条件分岐で分ける際の基本。パラメータごとに処理を変えたいときに必須。
  7. 「InputBoxでユーザー入力を受け取り、それをセルに反映する処理を教えて」
    ┗ 即席でデータ入力フォームを作るイメージ。簡易的なユーザー入力を求める場面で有効。
  8. 「MsgBox関数でYes/Noを選ばせ、Yesなら続行するVBAコードを生成して」
    ┗ 処理の途中でユーザー確認を挟むビジネスシーンに役立つ。誤操作の防止。
  9. 「DoEventsの使い方を示す簡単なVBA例を書いて」
    ┗ 長時間処理中に画面がフリーズしないようにするテクニック。ユーザビリティ向上。
  10. 「ワークシート関数(SUMやAVERAGEなど)をVBAで呼び出すコードを教えて」
    ┗ VBA側からシート関数を利用することで、既存の複雑な計算式を再活用できる。

【カテゴリ2】ファイル操作

ファイル操作」はVBAをビジネス活用するうえで非常に重要です。複数のブックからのデータ集約や定期レポートの自動生成など、大量の業務時間を削減できます。

  • キーワード例: Workbooks.Open, FileSystemObject, CSV, ダイアログ, パスワード保護
  • 業務活用メリット: 繰り返し行うファイルの開閉や保存、整理などを自動化。ヒューマンエラーを防ぎ、大幅な時間短縮が可能。
  1. 「任意のファイルを選択するダイアログを表示して、選択したファイル名をメッセージボックスに出すVBAコードを書いて」
    ┗ どのファイルを処理するかユーザーに選ばせるフローが実装できる。
  2. 「指定したフォルダ内のすべてのExcelファイルを開き、A1セルを取得して集計するVBAを生成して」
    ┗ 一括集計をするシナリオで非常に便利。レポート作成時間を大幅短縮。
  3. 「Webから取得したCSVファイルを自動的に開き、加工して別ブックに保存するマクロを書いて」
    ┗ 外部システムやWebのデータを取り込み→整形→保存までを自動化できる。
  4. 「FileSystemObjectを使ってフォルダ内のファイル一覧を取得し、シートに書き出すVBAを教えて」
    ┗ フォルダ構造の棚卸しや在庫管理システムとの連携などで使える。
  5. 「特定の拡張子(.csv)のみを取り込むファイル選択ダイアログを表示するVBAコードを書いて」
    ┗ 大量ファイルの中からCSVのみを取り扱うケースなど、業務効率が上がる。
  6. 「ワイルドカードを使ってファイル名のパターン検索を行い、該当ファイルを開くVBAを作って」
    ┗ 日付や特定キーワードを含むファイルだけをピンポイントで処理できる。
  7. 「テキストファイルを行ごとに読み取り、Excelシートに書き込むVBAマクロを書いて」
    ┗ レガシーシステムからのテキスト出力やロギング情報をExcelで分析する場合に有用。
  8. 「複数のワークブックを一括でパスワード保護するVBAコードを生成して」
    ┗ 社外提出資料のセキュリティ強化を一括で行えるので、厳格な管理が求められる業務に向く。
  9. 「特定のシートだけを別ファイルとしてエクスポートして保存するVBAを書いて」
    ┗ 部分的な情報を切り出して共有したい場合に便利。情報漏洩防止にもつながる。
  10. 「保存しないでブックを閉じる処理をVBAで作り、ユーザーに確認メッセージを出すコードを書いて」
    ┗ 作業中のファイルを誤って保存してしまうミスを防ぐ。定型ルールに沿った操作が可能。

【カテゴリ3】シート・セル操作

Excelを使ううえで欠かせないのが「シート・セル操作」。セルの書式設定、条件付きの表示切り替え、範囲のコピー&ペーストなど、さまざまな業務シーンで必要になります。

  • キーワード例: Range, Rows, Columns, AutoFilter, Copy&Paste, 条件付き書式
  • 業務活用メリット: 大量データを効率的に整形でき、ヒューマンエラーを削減。レイアウト変更や集計作業も自動化。
  1. 「複数シートのデータを1つのシートにまとめるVBAプログラムを書いて」
    ┗ シート別に管理しているデータを一括集計し、レポートを作成する流れがスムーズになる。
  2. 「指定した条件に合致する行だけを抽出して新しいシートにコピーするVBAコードを作って」
    ┗ 膨大なデータから必要部分だけを切り出すフィルタリングで、業務効率を上げられる。
  3. 「行ごとに背景色を変えながらデータを貼り付けるマクロをVBAで作って」
    ┗ データの可読性を上げ、作業時の見落としを防止。報告書など視覚的に見やすい資料の作成に最適。
  4. 「セル範囲(A1:D10)をForループで処理し、内容をメッセージボックスで表示するサンプルVBAを書いて」
    ┗ 繰り返し処理の基本。指定範囲のセルを順にチェックする際に便利。
  5. 「フィルターで可視セルだけをコピーし、新しいシートに貼り付けるVBAを作って」
    ┗ 既にAutoFilterなどで抽出したデータを、さらに別シートに転用するシーンに有効。
  6. 「列幅を自動調整するVBAコードを生成して」
    ┗ 定型レイアウトの資料作成時に手動調整が不要になる。見やすい表を高速に準備可能。
  7. 「検索ワードをセルに入力すると、その行だけ色を変えるVBAコードを教えて」
    ┗ クイック検索や在庫チェックなどで入力欄を用意すれば、瞬時に対象をハイライトできる。
  8. 「指定した文字列を含むセルを赤文字に変更するVBAマクロを書いて」
    ┗ ワード検索的に対象を強調表示。誤字脱字のチェックなどにも応用可能。
  9. 「セルの値に応じて行を非表示・再表示するVBAコードを生成して」
    ┗ 不要行を隠して必要な情報だけ表示。プレゼン資料や印刷用の表で見やすくレイアウトを整えられる。
  10. 「AutoFilterを使って特定条件の行だけを表示し、可視セルのみ印刷するVBAを作って」
    ┗ 大量のデータから必要部分だけを印刷。紙媒体での最適化や資料作成コストの削減につながる。

【カテゴリ4】イベント・ユーザーフォーム

イベント」と「ユーザーフォーム」を活用すると、インタラクティブな操作が可能になり、使い勝手が格段にアップします。フォームを使うことで、非エンジニアの従業員にも直感的な操作を提供できるのがメリットです。

  • キーワード例: Workbook_Open, Worksheet_Change, Workbook_BeforeClose, UserForm, Button, TextBox
  • 業務活用メリット: 視覚的にわかりやすい入力画面を用意し、フォームへの入力だけで後続処理を自動化。担当者の教育コストが下がる。
  1. 「ユーザーフォームを自動生成し、TextBoxとCommandButtonを配置するVBAコードを書いて」
    ┗ GUIで入力させたいときの基本。フォームを生成する時短術としても活用できる。
  2. 「ユーザーフォーム上のTextBoxに入力した値をセルに反映させるマクロを書いて」
    ┗ 直観的な操作でセルに値を渡す。ヒューマンエラーやレイアウト崩れを防ぎやすい。
  3. 「Worksheet_Changeイベントでセルに値が入力されたら別セルに計算結果を表示するVBAを書いて」
    ┗ 入力即時で再計算や補助的な通知が可能に。高度なリアルタイム反映。
  4. 「Workbook_BeforeCloseイベントを使って、ファイルを閉じる前に確認メッセージを表示するVBAを生成して」
    ┗ 保存忘れ・保存ミスを防ぐ定番。重要ファイルでの誤操作対策に欠かせない。
  5. 「Workbook_BeforePrintイベントを利用して印刷前に警告メッセージを表示するVBAを書いて」
    ┗ 印刷漏れや不要印刷の防止。紙やインクのコスト削減にもつながる。
  6. 「マウスクリックしたセルの背景色を切り替えるVBAマクロを書いて」
    ┗ わかりやすいビジュアルフィードバック。チェックリストなどに役立つ。
  7. 「Shiftキーを押しながらセルをクリックしたときだけ特別な処理をするVBAコードを作って」
    ┗ 特定の操作を分岐して実行。上級者向けのショートカットや隠し機能にも応用可能。
  8. 「ユーザーフォームのロード時に初期化処理を行うVBAイニシャライザを生成して」
    ┗ フォーム表示時点でコンボボックスに値をセットするなど、スムーズなUXを提供できる。
  9. 「アクセラレーターキー(ショートカット)をユーザーフォーム内のボタンに設定するVBAを教えて」
    ┗ キーボード操作で高速入力を行う現場では非常に重宝。使いやすいインターフェースが実現。
  10. 「Worksheet_SelectionChangeイベントでセルを選択した瞬間にアクションを起こすVBAを書いて」
    ┗ クリック時の処理と似ているが、選択変更に合わせたリアルタイム制御が可能。

【カテゴリ5】グラフ・表示関連

グラフ・表示関連」の処理は、データをわかりやすく可視化するポイント。動的にグラフを生成し、レポートとして提示することで、説得力や見やすさをアップできます。

  • キーワード例: Chartオブジェクト, ピボットテーブル, 条件付き書式, 進捗バー, SeriesCollection
  • 業務活用メリット: データの可視化を自動化することで、集計から報告書作成までの流れを大幅に効率化。視認性アップで意思決定が早まる。
  1. 「For Eachループを使ってシート内のグラフオブジェクト全てにタイトルを付与するVBAを書いて」
    ┗ 多数のグラフを一括で編集。報告書全体の統一感を短時間で作れる。
  2. 「Chartオブジェクトを動的に追加し、シート上にグラフを描画するVBAコードを提示して」
    ┗ データ量に応じて必要なグラフ数を自動生成。分析レポートに柔軟性を持たせられる。
  3. 「セルのコメントを一覧にして別シートに書き出すVBAマクロを作りたい」
    ┗ コメントが増えすぎて管理が大変な場合でも、自動で情報をまとめられる。
  4. 「Chartイベントを使ってグラフクリック時にセルの値を更新するVBAを書いて」
    ┗ インタラクティブなダッシュボードを実現。クリック操作で明細を表示するなど応用可能。
  5. 「ステータスバーに進捗状況を表示しながらマクロを実行するVBAを書いて」
    ┗ 長時間処理でも進捗がわかれば利用者のストレスが減る。サポート部門でも導入価値大。
  6. 「特定の列に重複データがあればハイライトするVBAコードを書いて」
    ┗ ダブりのある在庫リストや顧客データを即座に発見。ミス削減に有効。
  7. 「ピボットテーブルを自動作成するVBAマクロの記述例を教えて」
    ┗ 月次集計や売上分析などで大量のデータを一瞬でまとめ、視覚的に把握できる。
  8. 「グラフの系列名を自動でセルの内容から取ってくるVBAコードを生成して」
    ┗ シート上の値を活かしてグラフを動的に変更可能。更新ごとにタイトルを付け直す手間が省ける。
  9. 「フォームコントロールのListBoxを使って、選択項目に応じてセルの色を変えるVBAを作って」
    ┗ 選択内容でシートの見た目や計算結果を変化させ、状況を一目で把握できる画面を作成。
  10. 「条件付き書式をVBAで設定し、セルの値に応じてフォント色を変えるマクロを生成して」
    ┗ 特定値や閾値を超えたら自動で目立たせる。異常値検知や進捗管理で大活躍。

【カテゴリ6】データ処理・自動化

データ処理・自動化」は、大量のデータを扱ううえで必須の機能です。配列やDictionaryを活用して高速化したり、複雑な演算を組み合わせることで、手動作業では実現しづらい大規模な処理を短時間でこなせるようになります。

  • キーワード例: 2次元配列, Dictionary, JSON, ArrayList, Power Query, ScreenUpdating
  • 業務活用メリット: 反復的な処理や大規模データの分析を一括自動化。人的ミスを削減し、組織全体の効率向上に寄与。
  1. 「2次元配列を使って一括でデータをセルに貼り付けるVBAコードを書いて」
    ┗ 配列操作で速度向上。数千行でも一瞬で貼り付け可能。
  2. 「ListObject(テーブル)を操作して行の追加・削除を行うサンプルVBAを書いて」
    ┗ テーブル形式のデータ管理に強い。Dynamic Rangeにも対応しやすい。
  3. 「Dictionaryオブジェクトを使って重複を排除しながらデータを集約するVBAを教えて」
    ┗ 大量データの中のユニーク抽出やマージを手早く行うのに最適。
  4. 「文字列を分割して配列に入れ、その配列をセルに展開するVBAコードを作って」
    ┗ CSVを自動加工するシナリオや、テキストマイニングなどの事前処理に便利。
  5. 「セル内改行を含む文章を改行ごとに別セルへ分割するVBAマクロを書いて」
    ┗ データ整理やアンケート回答の集計など、文章解析で欠かせないテクニック。
  6. 「JSONファイルを読み込んでパースし、Excelシートに書き出すVBAマクロを書いて」
    ┗ Web APIなどからJSON形式で取得したデータをExcelに変換し、分析可能。
  7. 「Application.ScreenUpdatingをFalseにして高速化するサンプルVBAを書いて」
    ┗ 画面の再描画を止めることで処理を大幅に高速化。大量処理時に必須のテクニック。
  8. 「指定した文字列を含むセルだけを抽出し、新しいシートに一覧化するVBAを生成して」
    ┗ キーワード検索結果を別シートにまとめるリストアップ系の業務に有用。
  9. 「ArrayListを使って文字列コレクションをソートし、Excelに出力するVBAを作って」
    ┗ 大量の文字列を素早くソートして、アルファベット順や辞書順に並べたい業務に使える。
  10. 「Power QueryをVBAから呼び出してデータ更新するコードを書いて」
    ┗ Power Queryで作ったクエリを自動実行し、最新データを即時取得。BIレポートを効率化。

【カテゴリ7】エラーハンドリング・ログ出力

大規模開発や本番運用を想定すると、エラーハンドリングログ出力は欠かせません。エラー内容をログに残しておけば、後日トラブルシューティングする際の手がかりになります。

  • キーワード例: On Error GoTo, Resume Next, ログファイル, エラー内容, デバッグ
  • 業務活用メリット: 不具合発生時の原因特定が容易になり、復旧時間を短縮。システム運用コストを下げ、安定稼働につなげられる。
  1. 「エラーが出たらその内容をログファイルに書き出すVBAエラーハンドリングコードを書いて」
    ┗ システム監査や品質管理で役立つ。開発者不在でもログを見ればトラブルを把握可能。
  2. 「Workbooks.Openメソッドでファイルパスが存在しないときにエラーを返す処理を含むVBAコードを書いて」
    ┗ ファイル操作での典型的なエラーをハンドリング。業務中断を防ぎやすい。
  3. 「On Error Resume NextではなくOn Error GoToを使ったエラー処理例を示して」
    ┗ どこでエラーが起きたか正確に把握。大規模システムや重要処理での必須知識。
  4. 「マクロ実行中にエラーが起きた場合、ユーザーにエラー内容をわかりやすく表示するコードを書いて」
    ┗ ユーザーが自力で対処できる情報を提供し、問い合わせコスト削減に寄与。
  5. 「実行時エラーをキャッチして、ログに書き出したあとに処理を続行するVBAマクロを生成して」
    ┗ エラーが起きても止まらずに他の処理を進める。バッチ的作業に有効。
  6. 「ブレークポイントの設定例と、エラー箇所の特定の仕方をAIに聞いて」
    ┗ 開発者向け。デバッグスキルの向上に欠かせないテクニック。
  7. 「コード実行前後の時刻を取得し、エラーがあればその発生時間も記録する仕組みを作って」
    ┗ トレーサビリティ向上。処理速度やボトルネックの特定にも応用できる。
  8. 「外部ファイルからの入力値に不正があった場合、メッセージを出力して処理を停止するVBAコードを書いて」
    ┗ データ品質チェックを自動化。ダメージを最小化しやすい。
  9. 「次の処理に進む前にエラー数をカウントして、一定数を超えたら強制終了させるVBAを作って」
    ┗ 大量データを扱う場合に、エラーが多発した時点で処理を打ち切り、再チェックを促す仕組み。
  10. 「ログファイルの書式をカスタマイズし、エラー種別・発生箇所・時刻を一行でまとめるVBAマクロを生成して」
    ┗ レスポンス速度が重要な運用現場で活躍。システム保守担当者の負担を軽減。

【カテゴリ8】Outlookやメール連携

日常業務で必須となるのが「Outlookやメール連携」。VBAプログラミングから直接メールを自動送信できれば、レポート作成から送付までワンストップで行えます。

  • キーワード例: Outlook, MailItem, 添付ファイル, 連絡先, BCC, 予定表
  • 業務活用メリット: いちいちメール本文を作って添付ファイルを選ぶ時間が大幅に減る。自動通知やリマインドにも応用可能。
  1. 「指定したファイルをメールに添付して送信するOutlook連携VBAコードを生成して」
    ┗ レポートなどを指定の宛先に自動送信。日次業務や定時配信に活用。
  2. 「Outlookの連絡先からデータを取得してExcelに貼り付けるVBAマクロを書いて」
    ┗ 顧客リストや取引先情報を簡単にリフレッシュし、管理作業を省力化。
  3. 「メール送信時に本文にセルの値を反映させるVBAコードを作って」
    ┗ 顧客名や数値データを本文に自動挿入。個別対応メールの作業時間を激減。
  4. 「送信前にユーザーに確認ダイアログを表示し、Yesの場合のみメールを送るVBAを書いて」
    ┗ 誤送信防止。特に重要データを扱う場面でのリスク管理。
  5. 「複数のメールアドレスに同報送信するためにCCやBCCを設定するVBAマクロを教えて」
    ┗ 取引先や社内関係者を自動で追加。連絡漏れやCc,Bccの誤設定をなくす。
  6. 「Outlookをバックグラウンドで起動し、既存メールに返信する形でファイル添付するVBAを作って」
    ┗ やり取りの履歴を保ちながら返信。打ち合わせやサポート対応の効率化。
  7. 「送信時にエラーが出た場合、その内容をログに残して再送信を促すVBAを生成して」
    ┗ ネットワーク障害などで送信失敗した際の再試行をサポート。信頼性アップ。
  8. 「本文にHTML形式で装飾を加え、リッチテキストメールを送るVBAコードを書いて」
    ┗ よりわかりやすいメールフォーマットを提供。営業資料や案内メールで有効。
  9. 「ユーザーフォームで受信者アドレスと本文を入力させ、ボタン押下でメール送信するVBAを作って」
    ┗ シンプルなメール送信画面をExcel上で完結。非IT部門のスタッフでも扱いやすい。
  10. 「Outlookの予定表に新規予定を追加するVBAコードを教えて」
    ┗ ToDo管理や会議スケジュール設定を自動化。ダブルブッキングの防止にも効果的。

【カテゴリ9】AccessやSQL連携

AccessやSQL連携」をすれば、Excelだけでなくデータベースとも行き来が可能に。ADOを使ったクエリ実行やテーブル操作などをマスターすれば、Excelをデータ管理のフロントエンドとして活用できます。

  • キーワード例: ADO, Access, SQL Server, ODBC, クエリ, JOIN, Insert
  • 業務活用メリット: 大量データや複雑な検索を高速処理。社内DBや基幹システムからのリアルタイム情報取得が可能。
  1. 「Accessのテーブルからデータを取得し、Excelに転記するVBAプロシージャを生成して」
    ┗ メンテナンスはAccess、分析はExcelというワークフローを自動化。
  2. 「AccessのクエリをExcel VBAから実行し、その結果をシートに貼り付けるVBAコードを書いて」
    ┗ クエリ結果を即時にExcelへ。加工やグラフ化を素早く行える。
  3. 「SQL ServerにODBC接続してデータを取得し、Excelに貼り付けるVBAを生成して」
    ┗ 大規模データベースとの連携もExcel上で可能に。企業システムとの統合が容易。
  4. 「外部データベースにINSERT文を発行して、フォームで入力した内容を登録するVBAを書いて」
    ┗ 入力画面付きの業務システムをExcelで代替。コストを抑えてシステム化が可能。
  5. 「複数のテーブルをJOINして取得した結果をExcelに一括出力するVBAコードを作って」
    ┗ 総合的なレポート作成に便利。マルチテーブルのデータをまとめて分析。
  6. 「エラー時にSQL文と発生時刻をログに書き込み、処理を中断するVBAを教えて」
    ┗ DB操作でのエラー解析がしやすい。システム担当がいなくても原因追跡が可能。
  7. 「パラメータクエリを使って、動的に検索条件を変えられるVBAコードを生成して」
    ┗ 営業担当が使いたい条件を都度変更できる。自由度の高い分析ができる。
  8. 「読み取り専用のレコードセットを開き、取得データを配列に格納して高速に貼り付けるVBAを書いて」
    ┗ 高速処理とデータ保護を両立。大規模DBでもスピーディに読取り・反映が実現。
  9. 「権限の異なる複数のユーザーごとにSQL接続文字列を切り替えるVBAマクロを作って」
    ┗ 担当者によってアクセス権が違う場合にも対応可能。セキュリティレベルを細分化。
  10. 「Wordを起動し、Excelのデータを差し込み印刷用に設定するVBAを教えて」
    ┗ 顧客情報や住所録をExcelで管理し、Wordで自動的に宛名印刷。事務作業を効率化。

【カテゴリ10】アドバンス機能・応用

最後は、アドバンス機能・応用です。PDFの操作、Windows API呼び出し、他のOffice製品との高度連携など、ちょっと上級者向けのネタですが、生成AIにプロンプトを与えれば即座にサンプルコードが得られるので、未経験でも挑戦しやすくなります。

  • キーワード例: PDF保存, Windows API, PowerPoint, WScript.Shell, Application.OnTime, Mac対応
  • 業務活用メリット: 細かいニーズや特殊要件にも対応でき、既存ツールをさらに拡張して使える。独自の作業フローを自動化。
  1. 「PrintOutメソッドを使ってExcelシートをPDFとして保存するVBAコードを書いて」
    ┗ 見積書や請求書をPDF化して送るフローを自動化。ペーパーレス推進にも貢献。
  2. 「Windows APIを呼び出して独自のメッセージダイアログを表示するVBAコードを作って」
    ┗ Excel標準のMsgBoxでは物足りない場合に。より高度なUI要素を実装可能。
  3. 「Adobe Acrobatのオブジェクトを参照してPDFをテキスト化するVBAを書いて」
    ┗ PDFからのデータ抽出を自動化。紙の資料の電子化・検索性の向上に役立つ。
  4. 「WScript.Shellを使って外部プログラムを起動し、結果をExcelに書き戻すVBAを生成して」
    ┗ 外部の処理系やコマンドラインツールと連携。Excelから一歩踏み出したシステム統合が可能。
  5. 「PowerPointを起動し、指定したスライドにExcelのデータを貼り付けるVBAを書いて」
    ┗ 定例会議資料を自動作成。毎回のコピペ作業をゼロにできる。
  6. 「Mac版Excelでも動くマクロを作るときの注意点を踏まえたVBAコードをAIに書いてもらう」
    ┗ API呼び出しやパス指定など、Mac固有の違いを吸収するテクニックが学べる。
  7. 「Application.OnTimeメソッドで指定時刻にマクロを自動実行するスケジューリングVBAを作って」
    ┗ バッチ処理や深夜帯の定型業務を無人化。社内システム管理の手間軽減。
  8. 「GetAsyncKeyStateを使い、キー押下を検知したら特定の処理をするVBAを書いて」
    ┗ ショートカットキー活用や特殊イベント検知。Excelを仮想コントローラ的に使う応用も可能。
  9. 「PowerPointに複数のスライドを自動生成し、Excelのデータを反映するVBAを作って」
    ┗ 一括でスライドを増やし、グラフや表を自動配置。大規模プレゼン資料作りを高速化。
  10. 「ダイナミック配列をVBAで扱う際の注意点と、データ拡張に応じて自動リサイズするサンプルを教えて」
    ┗ レガシーなRedim制御を学ぶチャンス。可変データ量をスムーズに扱える。

まとめ:生成AI × VBAプログラミングで業務効率を一気に高めよう

総括

本記事では、VBAプログラミングを効率的に進めるために、生成AIを活用した「カテゴリ別プロンプトフレーズ100選」をご紹介しました。それぞれのフレーズには「キーワード例」や「業務活用メリット」を添え、どのようなビジネスシーンで役立つのかを具体的に解説しています。

今や、AIに「こんなコードが欲しい」と伝えるだけでベースのスクリプトがすぐ出力される時代です。初心者はそれを参考にコードの仕組みを学ぶことができ、上級者は時間を短縮しつつ高度な自動化やシステム連携をスピーディに進められます。

この記事に掲載したプロンプトを活用することで、Excelの基本操作からファイル操作、シート・セル操作、イベント・ユーザーフォーム、グラフ可視化、データ処理・自動化、エラーハンドリング、Outlook連携、AccessやSQLといったデータベース連携、さらにPDF変換やPowerPoint操作など、高度な応用まで幅広く対応できます。

さらにスキルアップしたい方へ

実務で安定して運用するためには、Microsoft公式ドキュメントなどの信頼性の高い情報源も合わせて参照しましょう。VBAの文法やオブジェクトモデルを体系的に理解しておくと、生成AIが出力したコードを修正・拡張するときに役立ちます。

参考リンク:Microsoft Office VBAドキュメント(公式)


免責事項

本記事の内容は執筆時点での情報や筆者の知見に基づいており、将来の正確性や有効性を保証するものではありません。実際の業務でのご利用にあたっては、ご自身の責任と判断のもとで十分なテストを行い、安全面やセキュリティ面、互換性を確認したうえで導入してください。また、本記事や生成AIが提供するコード・情報を使用して生じたいかなる損害についても、筆者は一切の責任を負いかねます。ご了承ください。

最後までお読みいただき、誠にありがとうございました。あなたのVBA開発がさらにスムーズに、そして楽しくなることを願っています。ぜひご紹介したプロンプトフレーズを活用し、AI × VBAで業務効率を飛躍させてください!

タイトルとURLをコピーしました