Access VBA における DoCmd
は、「Do Command(コマンドを実行する)」の略で、Access のユーザーインターフェースで実行できる操作を、VBAコードで自動化するためのオブジェクトです。たとえば、フォームの開閉、レポートの印刷、クエリの実行など、GUIからできる操作のほとんどをコードで制御できます。
🔹 DoCmd
の主な用途
操作の種類 | 使用例 |
---|---|
フォームの操作 | DoCmd.OpenForm "frmCustomers" |
レポートの操作 | DoCmd.OpenReport "rptSales", acViewPreview |
クエリの実行 | DoCmd.OpenQuery "qryUpdateInventory" |
レコードの操作 | DoCmd.GoToRecord , , acNext |
メッセージ表示 | DoCmd.Beep 、DoCmd.Hourglass True |
エクスポート | DoCmd.TransferSpreadsheet acExport, , "qryData", "data.xlsx" |
印刷処理 | DoCmd.PrintOut 、DoCmd.PrintReport |
🔸 使用例
' 顧客フォームを開く DoCmd.OpenForm "frmCustomers", acNormal ' 売上レポートをプレビュー表示 DoCmd.OpenReport "rptSales", acViewPreview ' 次のレコードに移動 DoCmd.GoToRecord , , acNext
🔹 注意点
DoCmd
の多くのメソッドは フォームやレポートが存在していることが前提です。- エラー処理は明示的に書く必要があります(例:
On Error Resume Next
など)。 DoCmd
の一部メソッドは、UI環境が必要なため、非UI環境(例:バックグラウンドでの実行)では失敗することがあります。