Accessで爆速検索:LIKEや通じるワイルドカードの使いこなし方
nanikatoaccess
なにか to Access
以下では、「VBA初心者向け:簡単なコードサンプルと手順」をテーマに、Microsoft Accessで初めてVBA(Visual Basic for Applications)を使う方が気軽に取り組めるような基本のステップを紹介します。VBAコードを書くと、マクロでは実現できない複雑な処理や外部連携ができるようになり、Accessの開発が一気に広がるでしょう。ぜひ本記事を参考に、少しずつVBAの世界に足を踏み入れてみてください。
On Error GoTo
でエラーをハンドリングしたり、ブレークポイントを使ったステップ実行でバグを見つけやすい。Option Explicit
Public Sub ShowHello()
MsgBox "こんにちは、VBAの世界へようこそ!", vbInformation
End Sub
ShowHello
と入力し、Enterを押すと、メッセージボックスが出るポイント:
Public Sub … End Sub
の間が関数(手続き)の本体。MsgBox
で簡単なメッセージを出せる
Private Sub btnHello_Click()
Call ShowHello
End Sub
シナリオ: ユーザーが必須項目「顧客名」を空のまま保存しようとしたらエラーを出す
Private Sub 顧客名_BeforeUpdate(Cancel As Integer)
If IsNull(Me.顧客名) Or Me.顧客名 = "" Then
MsgBox "顧客名は必須項目です。", vbExclamation
Cancel = True ' ← 更新をキャンセル
End If
End Sub
Public Sub ExportReportToPDF()
Dim strFile As String
strFile = "C:\Temp\SalesReport.pdf"
' rptSales というレポートを PDF形式で出力
DoCmd.OutputTo acOutputReport, "rptSales", acFormatPDF, strFile, False
MsgBox "レポートをPDF出力しました: " & strFile, vbInformation
End Sub
実行フロー:
DoCmd.OutputTo acOutputReport, "rptSales", acFormatPDF, ...
でレポートをPDFファイルへ書き出す活用:
?変数名
で出力
? strFile
と入力してEnterすると、中身を確認できるデバッグができると、エラー原因の特定やロジックの確認がとても楽になります。初心者ほどこの機能を活用すればバグ修正がスムーズに進むでしょう。
Public Sub SafeDivision()
On Error GoTo ErrHandler
Dim x As Long, y As Long
x = 10
y = 0
Dim result As Long
result = x / y ' ← 0除算エラー発生
MsgBox "結果: " & result, vbInformation
Exit Sub
ErrHandler:
MsgBox "エラーが発生しました: " & Err.Description, vbExclamation
End Sub
MsgBox "こんにちは"
だけで動作を確認し、自信を付けるOn Error GoTo
で最低限の例外対策「VBAは難しそう」と感じるかもしれませんが、小さなコードから徐々に書き足すだけで、便利な自動処理がどんどん作れるようになります。まずは初歩のステップを踏みつつ、Accessのフォームやイベントと連携させながら学習を進めてみてください。