Public Sub UpdateDataBySQL(sFile As String, strSQL As String)
Dim cnn As New ADODB.Connection
Dim strCn As String '声明链接字符串,设置ADODB的参数
Set cnn = New ADODB.Connection '初始化ADODB链接
cnn.CursorLocation = adUseClient '设置ADODB链接参数
cnn.Mode = adModeReadWrite
strCn = "Provider=Microsoft.ace.Oledb.12.0;" _
& "Extended Properties='Excel 12.0;HDR=YES;IMEX=1';" _
& "Data Source=" & sFile
cnn.Open (strCn) '打开ADODB链接,即将Excel文件作为数据库链接打开
cnn.Execute (strSQL)
cnn.Close
Set cnn = Nothing
End Sub
执行时报“操作必须使用一个可更新的查询”
在网上查相关情况,
1、IMEX=1 改成 IMEX=2 2是读写 试验无效
2、修改 工具-文件夹选项-文件夹简单共享 勾去掉 XLS属性everyone权限 试验无效
3、UPDATE 语句错误也会报这个错 确实存在这种情况,update语句有问题时也报了这个。
想想会不会HDR=YES;IMEX=1还有其他限制,删除HDR=YES;IMEX=1一试,OK了。原理不清楚。