我希望通过SQL查询更新我的Excel表格数据。我知道你可以通过ADODB.Connection“连接”到一个工作表,并在ADODB.Recordset中检索(SELECT)数据。然而,对于UPDATE查询使用相同的过程会产生“操作必须使用可更新的查询”错误。有没有其他方法来实现这个目标?
一个会产生错误的示例代码:
代码期望在保存为 .xls 的工作表中执行,其中 Sheet1 包括一个至少包含列标题 a 和 b 的表格。
一个会产生错误的示例代码:
Sub SQLUpdateExample()
Dim con As ADODB.Connection
Dim rs As ADODB.Recordset
Set con = New ADODB.Connection
con.Open "Driver={Microsoft Excel Driver (*.xls)};" & _
"DriverId=790;" & _
"Dbq=" & ThisWorkbook.FullName & ";" & _
"DefaultDir=" & ThisWorkbook.FullName
Set rs = New ADODB.Recordset
Set rs = con.Execute("UPDATE [Sheet1$] SET a = 10 WHERE b > 2")
Set rs = Nothing
Set con = Nothing
End Sub
代码期望在保存为 .xls 的工作表中执行,其中 Sheet1 包括一个至少包含列标题 a 和 b 的表格。
ReadOnly=False;
。也许您可以通过此链接找到有价值的信息。 - marcw