0

ユーザー名/パスワード検証フォームを作成しようとしています。ログインボタン、つまりcomamand1_click()をクリックすると、次のエラー「オブジェクト変数またはブロック変数が設定されていません」が表示されます。デバッグをクリックすると、

> rs.ActiveConnection = conn

私が入力したコード:

Dim a
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset

Private Sub Command1_Click()
Set conn = New ADODB.Connection
conn.ConnectionString = "Provider = Microsoft.ACE.OLEDB.12.0; Data Source = C:\VB Project\logindetails1.mdb"
conn.Open

If conn = Null Then
    MsgBox ("no db")
    End
End If

rs.ActiveConnection = conn
rs.Source = "select * from login"
rs.Open

rs.MoveFirst
While Not rs.EOF
If Text1.Text = rs.Fields("id") And Text2.Text = rs.Fields("password") Then
    a = 1
Else
    a = 0
End If
Wend
rs.Close
conn.Close
Set rs = Nothing
Set conn = Nothing

If a = 1 Then
    MsgBox ("Login Successful!!")
Else
    MsgBox ("Invalid Details!!")
End If
End Sub

Private Sub Command2_Click()
Text1.Text = ""
Text2.Text = ""
End Sub

Private Sub Command3_Click()
End
End Sub
4

1 に答える 1

6

ADODB.Recordsetrs( )変数は。だと思いますNothing

オブジェクトを作成する必要があります。

Set rs = New ADODB.Recordset

Setまた、レコードセットの接続を設定するときにキーワードを使用する必要があると思います。

Set rs.ActiveConnection = conn
于 2012-10-29T16:35:35.790 に答える