我正在尝试通过 VBA 连接到 mdb 数据库。代码非常好。如果我在任何其他表上运行查询,它工作得很好。但是当我使用表名“SpeedRestriction”时,查询不会返回任何行。我试过方括号,但它不起作用。我对数据库只有只读访问权限,因此无法更改预先存在的表名。该代码没有给出任何错误/异常。
有什么解决方法吗?以下是代码。
sPath = <Valid path>
Set conn = New ADODB.Connection
strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
"Data Source=" & sPath
conn.Open strConnection
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
sSql = "Select * from SpeedRestriction"
rs.Open sSql, conn, adOpenForwardOnly, adLockPessimistic, adCmdText
Debug.Print rs.EOF
Debug.Print rs.BOF
'XL_Ws_SpeedData.Range("A1").CopyFromRecordset rs
ThisWorkbook.Worksheets("Speed Data").Range("A1").CopyFromRecordset rs
Set rs = Nothing
conn.Close
Set conn = Nothing