执行如下代码出现问题: Private Sub Combo1_Click() str = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\aa\data.mdb;Persist Security Info=False"
Set adcon = New ADODB.Connection
adcon.Open str
str = "SELECT * FROM" & Chr(34) & Combo1.Text
Set rs = New ADODB.Recordset
rs.Open str
Set DataGrid1.DataSource = rs
Adodc1.RecordSource = str
Adodc1.Refresh
DataGrid1.DataSource = Adodc1
End Sub
问题为:未找到方法或数据成员。
请问该如何解决?
Set adcon = New ADODB.Connection
adcon.Open str
str = "SELECT * FROM" & Chr(34) & Combo1.Text
Set rs = New ADODB.Recordset
rs.Open str
Set DataGrid1.DataSource = rs
Adodc1.RecordSource = str
Adodc1.Refresh
DataGrid1.DataSource = Adodc1
End Sub
问题为:未找到方法或数据成员。
请问该如何解决?
Set adcon = New ADODB.Connection
adcon.Open str
str = "SELECT * FROM" & Chr(34) & Combo1.Text
Set rs = New ADODB.Recordset
rs.Open str
set Adodc1.RecordSource = rs
Adodc1.Refresh
DataGrid1.DataSource = Adodc1
End Sub
"SELECT * FROM" 最好是改为 "SELECT * FROM " 这样的话,会是正规的SQL语句否则FROM会和内容连在一起,那样就是错误的了~
1、建立连接。
dim Conn as ADODB.connection
With Conn
If .State = adStateOpen Then
.Close
End If
.CursorLocation = adUseClient
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" _
& strFileName
.Open
End With2、打开记录集
dim SQL as string
SQL = "select * from " & strTable
dim Rs as ADODB.recordset
With Rs
If .State Then
.Close
End If
.CursorLocation = adUseClient
.Open SQL, Conn, adOpenDynamic, adLockBatchOptimistic
End With
3、设置数据源 Set datagrid.DataSource = Rs
Private Sub Combo1_Click() str = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\aa\data.mdb;Persist Security Info=False"
Set adcon = New ADODB.Connection
adcon.Open str
str = "SELECT * FROM" & Chr(34) & Combo1.Text
Set rs = New ADODB.Recordset
rs.Open str
set DataGrid1.DataSource= rs
End Sub
我的目的是在Combo1中选择一个表后,在DataGrid中显示出表的内容! 请大家继续帮忙解答!
改成 str="SELECT * From "&Combol.text试试 再有你的Combol框中的text到底是不是表的名字,你最好弄清楚
‘模块
Public conn As New ADODB.Connection
Public rst As New ADODB.Recordset
Public sql As String, cn As String'窗体
Private Sub Form_Load()
cn = "dsn=mis;uid=sa;pwd=;"
conn.Open cn
End SubPrivate Sub Combo3_Click()
If Combo3.Text = "订料入仓" Then
If rst.State Then rst.Close
sql = "select inid as 入仓单号,orderid as 订单号码,indate as 日期,intime as 时间,custname as 客户名,depot as 仓库,amount as 数量,houseman as 仓管 from mis_depotsyle where insyle='" & Trim(Combo3.Text) & "'"
rst.Open sql, conn, adOpenKeyset, adLockPessimistic
Set DataGrid1.DataSource = rst
ElseIf Combo3.Text = "客户退回" Or Combo3.Text = "成品入仓" Or Combo3.Text = "退料入仓" Or Combo3.Text = "其它入仓" Then
Call database
ElseIf Combo3.Text = "生产领料" Or Combo3.Text = "补料" Or Combo3.Text = "退料" Or Combo3.Text = "加工商领料" Or Combo3.Text = "其它领料" Then
Call databaseout
End If
End Sub
Public Sub database()
If rst.State Then rst.Close
sql = "select inid as 入仓单号,indate as 入仓日期,intime as 时间,custname as 客户名,depot as 仓库,amount as 数量,houseman as 仓管 from mis_depotsyle where insyle='" & Trim(Combo3.Text) & "'"
rst.Open sql, conn, adOpenKeyset, adLockPessimistic
If rst.EOF = False Then
Set DataGrid1.DataSource = rst
Else
MsgBox "没有数据!", vbExclamation, "没有数据!"
End If
End Sub
Public Sub databaseout()
If rst.State Then rst.Close
sql = "select outid as 出仓单号,outdate as 出仓日期,outtime as 时间,custname as 客户名,depot as 仓库,amount as 数量,inmate as 领料人,houseman as 仓管 from mis_depotsyleout where outsyle='" & Trim(Combo3.Text) & "'"
rst.Open sql, conn, adOpenKeyset, adLockPessimistic
If rst.EOF = False Then
Set DataGrid1.DataSource = rst
Else
MsgBox "没有数据!", vbExclamation, "没有数据!"
End If
End Sub