看下面一段代码:
Dim dbname As String
Dim sql As String
dbname = App.Path
If Right$(dbname, 1) <> "\" Then dbname = dbname & "\"
dbname = dbname & "data.mdb"
Set db = OpenDatabase(dbname, False, False) '打开数据库
For Each tb In db.TableDefs
If Left$(tb.Name, 4) <> "MSys" Then '不显示系统表
Combo1.AddItem tb.Name
Combo1.Text = tb.Name
End If
Next tb
sql = Combo1.Text
sql = "SELECT * FROM" & " " & sql & " " & "ORDER BY 点号" Set rs = db.OpenRecordset(sql, dbOpenDynaset)
在combox里选择表名,在msflexgrid中显示数据。运行到上面一行出现实时错误“13”,类型不匹配。这是什么原因?
Dim dbname As String
Dim sql As String
dbname = App.Path
If Right$(dbname, 1) <> "\" Then dbname = dbname & "\"
dbname = dbname & "data.mdb"
Set db = OpenDatabase(dbname, False, False) '打开数据库
For Each tb In db.TableDefs
If Left$(tb.Name, 4) <> "MSys" Then '不显示系统表
Combo1.AddItem tb.Name
Combo1.Text = tb.Name
End If
Next tb
sql = Combo1.Text
sql = "SELECT * FROM" & " " & sql & " " & "ORDER BY 点号" Set rs = db.OpenRecordset(sql, dbOpenDynaset)
在combox里选择表名,在msflexgrid中显示数据。运行到上面一行出现实时错误“13”,类型不匹配。这是什么原因?
2、如果有引用到ADO,则看你的变量RS声明的类型是ADO还是DAO
3、声明变量时最好写完整,例如:Dim rs as ADODB.Recordset 则表明是ADO类型