' フォームモジュールに記述ここから −−−−−−−−−−−−−−−−−−−−−−−−−
Dim CN As ADODB.Connection
Private Sub UserForm_Initialize()
On Error GoTo ErrGyo
Set CN = New ADODB.Connection
CN.Provider = "Microsoft.Jet.OLEDB.4.0" CN.Open ThisWorkbook.Path & "\test.mdb"
Call ClearLabel
BtnOK.Caption = "OK"
Exit Sub
ErrGyo:
MsgBox "SyainMSTへの接続に失敗しました", vbCritical
BtnOK.Enabled = False
End Sub
Private Sub BtnOK_Click()
Dim RS As ADODB.Recordset
Dim SQL As String
Call ClearLabel
If ChkSyainID(TxtID) Then SQL = "SELECT * FROM SyainMST WHERE SyainID = " & TxtID
Set RS = New ADODB.Recordset
RS.Open SQL, CN, adOpenStatic, adLockReadOnly
If Not RS.BOF Then
LblName = RS.Fields("SyainNAME")
LblKinzoku = RS.Fields("Kinzoku")
LblSyozoku = RS.Fields("Syozoku")
LblYakusyoku = RS.Fields("Yakusyoku")
Else
MsgBox "入力された社員IDは存在しません", vbCritical
End If
Set RS = Nothing
Else
MsgBox "社員IDが有効ではありません", vbCritical
End If
End Sub
Private Sub UserForm_Terminate()
Set CN = Nothing
End Sub
' フォームモジュールに記述ここまで −−−−−−−−−−−−−−−−−−−−−−−−−
BETWEEN条件
(例)SELECT * FROM SyainMST WHERE SyainID BETWEEN 1000 AND 2000
指定した2つの値の間にあるデータを取得します。
(例)では社員IDが1000から2000の間にあるデータを取得します。
IN条件
(例)SELECT * FROM SyainMST WHERE Syozoku IN ('経理部')
指定した値のリストの中にあるデータを取得します。
(例)では所属が経理部のデータのみ取得します。
LIKE条件
(例)SELECT * FROM SyainMST WHERE SyainNAME LIKE '鈴木%'
文字の検索条件を指定します。ワイルドカードで"%"と"_"が使用できます。"%"は「任意の文字数の任意の文字」を"_"は「1文字分の任意の文字」を表し、組み合わせて使用することが可能です。
(例)では名前の先頭に鈴木を含む全てのデータを取得します。