怎样才能同时用ADO和Excel打开同一个.xls文件?我做的一开始是可以了的,(就是每点击一次Command2,就能看见Excel文件里的数据即使更新了)。后来不知道怎么的,就不行了。如果先用ADO打开,在用excel打开,则提示“不能打开temp1.xls”;如果先用Excel打开,再用ADO打开,则提示“它已经被别的用户以独占的方式打开,或没有查看数据的权限”
Dim oConn As ADODB.ConnectionPrivate Sub Command1_Click()
'Open the ADO connection to the Excel workbook Set oConn = New ADODB.Connection
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & "\temp1.xls;" & _
"Extended Properties=""Excel 8.0;HDR=NO;"""
oConn.Execute "insert into [Sheet1$] (F1) values(11)"
End SubPrivate Sub Command2_Click()
oConn.Execute "insert into [Sheet2$] (F1) values(22)"
End SubPrivate Sub Command3_Click()
oConn.Close
End Sub
Dim oConn As ADODB.ConnectionPrivate Sub Command1_Click()
'Open the ADO connection to the Excel workbook Set oConn = New ADODB.Connection
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & "\temp1.xls;" & _
"Extended Properties=""Excel 8.0;HDR=NO;"""
oConn.Execute "insert into [Sheet1$] (F1) values(11)"
End SubPrivate Sub Command2_Click()
oConn.Execute "insert into [Sheet2$] (F1) values(22)"
End SubPrivate Sub Command3_Click()
oConn.Close
End Sub
的方法不行。
你打直接从打开的EXL中读入数据到后台数据库中不就得了。
在oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _这一行的前面加一句
If oConn.State = adStateOpen Then oConn.Close
oconn只需打开一次,就可以一直连接着直到你把它关了才需再打开,建议你把连
接代码作为一个独立的模块这样在程序退出时再把它关闭就不容易出错了。