使用 vba TransferSpreadsheet 将 Aaccess 表与 Excel 链接
Posted
技术标签:
【中文标题】使用 vba TransferSpreadsheet 将 Aaccess 表与 Excel 链接【英文标题】:Link Aaccess table with Excel using vba TransferSpreadsheet 【发布时间】:2017-05-29 03:09:06 【问题描述】:我正在尝试将 Excel 与 SharePoint 链接,以便能够使用 Excel 在 SharePoint 中读取/写入。
我尝试了很多方法,但总是收到“无法连接到服务器”错误,因此我尝试将 SharePoint 与 MS Access 中的表链接起来,它使用“TransferSharePointList”工作。
现在,为了解决 Excel 中的此错误,我将在 MS Access 中将该表与 Excel 链接。我尝试使用TransferSpreadsheet
,但我在 Excel 中的表格是空的,在 Access 中就像所附照片一样。
下面是我在 MS Access 中的代码:
DoCmd.TransferSharePointList acLinkSharePointList, SERVER, LISTNAME, VIEWNAME, TableName, True
DoCmd.TransferSpreadsheet acLink, acSpreadsheetTypeExcel12Xml, "Prices", "C:\Users\Desktop\1.xlsx", True
CurrentDb.TableDefs.Refresh
End Sub
谁能告诉我为什么我在 Excel 中的表格是空的。
【问题讨论】:
您在 Excel 表格中添加过什么吗?如果没有,它将是空的。 (或者您的问题是试图说您正在尝试将单个 Access 表“价格”链接到两个不同的来源??如果是这样,那是行不通的 - Access 将不知道它应该使用哪个来源.) 不,我没有,我想将访问表链接到 excel,即从 excel 编辑访问表,我也尝试了没有共享点的代码(Access 只有一个源,即 Excel),它是还是不行 您所做的一切都很好 - 您的 Access 表已链接到 Excel 电子表格,您可以从 Excel 中编辑该表。编辑后,返回 Access,您的表格将反映所做的更改。 谢谢 YowE3K,问题是我在 Excel 中没有看到任何表格,只是一张空白纸 在您输入信息之前,该空白表是您的表格。您的访问代码表明您将在第 1 行中有字段名称,因此这是第一步 - 将这些字段名称放入。第二步是将数据放入第 2 行以后。 【参考方案1】:您缺少工作表名称:
DoCmd.TransferSpreadsheet acLink, acSpreadsheetTypeExcel12Xml, "Prices", "C:\Users\Desktop\1.xlsx", True, "Sheet1$" '<-- Sheet name
CurrentDb.TableDefs.Refresh
【讨论】:
我试过了,还是不行(我认为只有在“acImport”的情况下才需要工作表和范围【参考方案2】:我认为是这样的。
DoCmd.TransferSpreadsheet, acLink, , "xlData", strFileName, True
有关详细信息,请参阅下面的 URL。
http://access-excel.tips/access-vba-cocmd-transferspreadsheet/
【讨论】:
以上是关于使用 vba TransferSpreadsheet 将 Aaccess 表与 Excel 链接的主要内容,如果未能解决你的问题,请参考以下文章