PR

Access VBA逆引き集|Copilotに聞けばすぐ作れるVBAコード20選|業務効率化に役立つ実践プロンプト集

Access学習

近年はMicrosoft Copilotの登場によって、Access VBA開発の進め方が大きく変わりました。結論から言うと、「最初からコードを書く」のではなく、「Copilotに作らせて修正する」方が圧倒的に効率的です。

特にAccess開発では、

  • CSV取込
  • Excel出力
  • SQL実行
  • PDF出力
  • メール送信

など似たコードを何度も作成するため、Copilotとの相性が非常に良いです。

そこで今回は、Access開発でよく使うVBAコード20選と、実際にCopilotへ投げるプロンプト例を紹介します。


スポンサーリンク

なぜAccess開発とCopilotの相性が良いのか

例えば、

CSVを取り込みたい

という要件があったとします。

従来

ネット検索 ↓ サンプル探し ↓ コピペ ↓ 修正

でした。

現在は

Copilotへ質問 ↓ コード生成 ↓ 修正 ↓ 完成

です。

開発時間を大幅に短縮できます。


① CSVファイルを取り込みたい

Copilotへの依頼

Access VBAです。 CSVファイルを T_CUSTOMERへ取り込むコードを 作成してください

よく生成されるコード

DoCmd.TransferText _
acImportDelim, _
"", _
"T_CUSTOMER", _
"C:\DATA\Customer.csv", _
True

② Excelファイルを取り込みたい

Copilotへの依頼

Access VBAです。 Excelファイルを テーブルへ取り込むコードを 作成してください

DoCmd.TransferSpreadsheet _
acImport, _
acSpreadsheetTypeExcel12Xml, _
"T_DATA", _
"C:\DATA\Test.xlsx", _
True

③ AccessデータをExcel出力したい

Copilotへの依頼

Access VBAです。 クエリ結果を Excel出力するコードを お願いします

DoCmd.TransferSpreadsheet _
acExport, _
acSpreadsheetTypeExcel12Xml, _
"Q_SALES", _
"C:\DATA\Sales.xlsx"

④ PDF出力したい

帳票システムでは定番です。

Copilotへの依頼

Accessレポートを PDF出力してください

DoCmd.OutputTo _
acOutputReport, _
"R_INVOICE", _
acFormatPDF, _
strFile

⑤ SQLを実行したい

Copilotへの依頼

Access VBAで UPDATE SQLを実行したい

CurrentDb.Execute strSQL

⑥ レコード件数を取得したい

Copilotへの依頼

レコード件数取得方法を 教えてください

DCount("*","T_CUSTOMER")

⑦ フォルダ内ファイル一覧を取得したい

Copilotへの依頼

FileSystemObjectで フォルダ内のファイル一覧取得

Set fso = CreateObject( _
"Scripting.FileSystemObject")

⑧ ファイル存在チェックをしたい

If Dir(strFile) <> "" Then
    MsgBox "存在します"
End If

⑨ フォルダを作成したい

MkDir "C:\DATA"

⑩ Excelを起動したい

Set xlApp = _
CreateObject("Excel.Application")

xlApp.Visible = True

⑪ Outlookメールを送信したい

Copilotへの依頼

Access VBAで Outlookメール送信コードを 作ってください

objMail.Send

⑫ 添付ファイルを送信したい

objMail.Attachments.Add _
strFile

⑬ フォームを開きたい

DoCmd.OpenForm _
"F_MENU"

⑭ レポートを表示したい

DoCmd.OpenReport _
"R_SALES", _
acViewPreview

⑮ コンボボックスへ値を設定したい

Me.cboStatus = "完了"

⑯ テキストボックスをクリアしたい

Me.txtName = ""

⑰ SQLで重複データ抽出

Copilotへの依頼

重複顧客を抽出する Access SQLを作ってください

SELECT 顧客名,
Count(*)
FROM T_CUSTOMER
GROUP BY 顧客名
HAVING Count(*) > 1

⑱ 文字列置換をしたい

Replace(strData," ","")

CSV補正では頻繁に利用します。


⑲ 現在日時を取得したい

Now()

ログ管理で必須です。


⑳ エラーハンドリングを追加したい

Copilotへの依頼

以下のVBAへ エラー処理を追加してください

On Error GoTo ErrHandler

ExitProc:
    Exit Sub

ErrHandler:

    MsgBox Err.Description

    Resume ExitProc

Copilotへ質問する時のコツ

悪い例

VBA作って

情報不足です。


良い例

Access VBAです。 CSVを取り込みたいです。 テーブル名は T_CUSTOMERです。 エラー処理付きで お願いします。

要件を具体的に伝えた方が精度が向上します。


Copilotレビューも活用しよう

コード生成だけではありません。

例えば、

以下のAccess VBAを レビューしてください。 処理速度 保守性 エラー対策 の観点でお願いします。

という使い方も効果的です。


Copilotで開発効率を上げる流れ

おすすめは、

要件整理 ↓ Copilotへ質問 ↓ コード生成 ↓ Accessへ貼り付け ↓ 動作確認 ↓ Copilotレビュー

です。

この流れを習慣化すると開発速度が大きく向上します。


AI時代でも重要なAccess知識

Copilotがコードを書いてくれるようになったとはいえ、

  • テーブル設計
  • 正規化
  • SQL知識
  • Access運用知識

は依然として重要です。

実際には、

業務知識 + Access知識 + Copilot活用力

を持つ技術者が最も強い時代になっています。


まとめ

CopilotはAccess VBA開発において非常に強力な支援ツールです。

特に今回紹介した20種類は実務で頻繁に利用するものばかりです。

  • CSV取込
  • Excel連携
  • PDF出力
  • SQL実行
  • Outlook連携
  • ファイル操作
  • フォーム制御
  • エラーハンドリング

などは、まずCopilotへ聞く習慣をつけるだけで開発効率が大きく変わります。

「ネット検索して探す」から、「Copilotに作らせる」へ。

これが今後のAccess開発の新しいスタンダードになるかもしれません。

Access VBA逆引き大全 600の極意 Microsoft 365/Office 2021/2019/2016/2013対応 | E-Trainer.jp[中村峻] |本 | 通販 | Amazon
AmazonでE-Trainer.jp[中村峻]のAccess VBA逆引き大全 600の極意 Microsoft 365/Office 2021/2019/2016/2013対応。アマゾンならポイント還元本が多数。E-Trainer.jp…

コメント

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