Microsoft Access VBA - SQLであいまい検索をする方法

◆概要
SQLであいまい検索をするには、LIKE演算子とワイルドカードを使います。
SQL文の最後にコロン(;)をつけなくても動作しますが、つけるのがお作法です。 次の例は、顧客マスタから小山という文字を含んだ人のレコードセットを作成し、最初と2番目の人の氏名を表示します。
 

Private Sub cmdSearch_Click()
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim mySQL As String

    Set db = CurrentDb

    mySQL = "SELECT * FROM 顧客マスタ "
    mySQL = mySQL & "WHERE 氏名 Like '*" & _
    "小山" & "*';"
    Set rs = db.OpenRecordset(mySQL)
    
    rs.MoveFirst    ' 先頭レコードに移動する
    MsgBox rs!氏名
    rs.MoveNext     ' 次のレコードに移動する
    MsgBox rs!氏名
    
    rs.Close: Set rs = Nothing
    db.Close: Set db = Nothing
End Sub

▼ページトップに戻る