【发布时间】:2020-05-12 13:43:16
【问题描述】:
我有一个 Excel 文件,它在带有本地表的 MS Access 数据库上执行 SQL 查询,工作正常。现在我必须让这个数据库在网络上工作,我们只有 SharePoint。我发现了 SharePoint 列表,因此我将表导出到这些列表中,现在我有了一个带有链接表的 Access 数据库。
问题是我无法像以前那样在这个数据库上使用 Excel 中的查询。是否可以?因为我可以从 Access 中进行这些查询并且它可以工作,所以我不明白为什么它不能从 Excel 中进行。这是我的功能:
Sub test()
Dim cn As Object
Dim rs As Object
Dim strSql As String
Dim strConnection As String
Set cn = CreateObject("ADODB.Connection")
strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
"Data Source=" & "C:\...\BADO.accdb"
strSql = "SELECT Count(*) FROM Programmes;"
cn.Open strConnection
Set rs = cn.Execute(strSql)
MsgBox rs.Fields(0) & " tuples dans Programmes"
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End Sub
连接cn.Open 的部分有效,但是当它尝试执行cn.Execute 时,Excel 进入无休止的加载并崩溃。此代码仅适用于本地表。
如果不可能,我在想我可以让数据库与其本地表在 SharePoint 上并让用户将其与 OneDrive 同步,但我不知道同步是如何工作的。如果数据库很重,我不希望他们每次都上传完整大小。那么,有没有办法让这段代码工作呢?
【问题讨论】:
-
请描述您的环境。 Excel 文件和/或 Access 数据库是位于 SharePoint 上、SP 之外但硬连线 LAN 上,还是位于通过无线/远程连接连接到 SP 的本地 CPU 上?
标签: sql excel ms-access sharepoint ado