Private Sub Form_Activate()
Dim j As Integer
Dim MsgText As String
Dim F As Integer
Dim s As String
For F = 0 To Form5.List2.ListCount
s = Form5.List2.List(F)
txtSQL = "select 物质名称,AN,BN,CN from 表1 where 物质名称 = '" & s & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
With msgList
.Rows = F + 1
Do While Not mrc.EOF
.Rows = .Rows + 1
For i = 0 To mrc.Fields.Count - 1
.TextMatrix(.Rows - 1, i) = mrc.Fields(i) & ""
b(.Rows - 1, i + 1) = Val(mrc.Fields(i))
Next i
mrc.MoveNext
Loop
End With
Next
mrc.Close
End Sub
Public Function ExecuteSQL(ByVal SQL _
As String, MsgString As String) _
As ADODB.Recordset
Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Dim sTokens() As String
On Error GoTo ExecuteSQL_Error
sTokens = Split(SQL)
Set cnn = New ADODB.Connection
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=化工数据.mdb;Persist Security Info=False"
cnn.Open If InStr("INSERT,DELETE,UPDATE", _
UCase$(sTokens(0))) Then
cnn.Execute SQL
MsgString = sTokens(0) & _
" query successful"
Else
Set rst = New ADODB.Recordset
rst.Open Trim$(SQL), cnn, _
adOpenKeyset, _
adLockOptimistic
rst.MoveLast
Set ExecuteSQL = rst
MsgString = "查询到" & rst.RecordCount & _
" 条记录 "
End If
ExecuteSQL_Exit:
Set rst = Nothing
Set cnn = Nothing
Exit Function
ExecuteSQL_Error:
MsgString = "查询错误: " & _
Err.Description
Resume ExecuteSQL_Exit
End Function
调试时出现错误with变量未定义
mrc变量为nothing
请问则么那么改这个错误
Dim j As Integer
Dim MsgText As String
Dim F As Integer
Dim s As String
For F = 0 To Form5.List2.ListCount
s = Form5.List2.List(F)
txtSQL = "select 物质名称,AN,BN,CN from 表1 where 物质名称 = '" & s & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
With msgList
.Rows = F + 1
Do While Not mrc.EOF
.Rows = .Rows + 1
For i = 0 To mrc.Fields.Count - 1
.TextMatrix(.Rows - 1, i) = mrc.Fields(i) & ""
b(.Rows - 1, i + 1) = Val(mrc.Fields(i))
Next i
mrc.MoveNext
Loop
End With
Next
mrc.Close
End Sub
Public Function ExecuteSQL(ByVal SQL _
As String, MsgString As String) _
As ADODB.Recordset
Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Dim sTokens() As String
On Error GoTo ExecuteSQL_Error
sTokens = Split(SQL)
Set cnn = New ADODB.Connection
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=化工数据.mdb;Persist Security Info=False"
cnn.Open If InStr("INSERT,DELETE,UPDATE", _
UCase$(sTokens(0))) Then
cnn.Execute SQL
MsgString = sTokens(0) & _
" query successful"
Else
Set rst = New ADODB.Recordset
rst.Open Trim$(SQL), cnn, _
adOpenKeyset, _
adLockOptimistic
rst.MoveLast
Set ExecuteSQL = rst
MsgString = "查询到" & rst.RecordCount & _
" 条记录 "
End If
ExecuteSQL_Exit:
Set rst = Nothing
Set cnn = Nothing
Exit Function
ExecuteSQL_Error:
MsgString = "查询错误: " & _
Err.Description
Resume ExecuteSQL_Exit
End Function
调试时出现错误with变量未定义
mrc变量为nothing
请问则么那么改这个错误
dim mrc as new ADODB.Recordset
.
. mrc.Close
End Sub