我正在尝试使用带有acimport选项的transferspreadsheet函数将数据从excel传输到Access表,但是收到错误。我正在导入的工作表在名称中有明显的符号(这是不可协商的)。我知道我可以通过excel对象打开文件,但不想走那条路。
使用以下代码:
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, "tTest", "C:\Users\tnh3spb\Desktop\test.xlsx", True, "#test#!"
或同样
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, "tTest", "C:\Users\tnh3spb\Desktop\test.xlsx", True, "" & Chr(35) & "test" & Chr(35) & "!"
给出了同样的错误,其中无法找到工作表,并且井号已经更改为句点(。) VBA Error
答案 0 :(得分:0)
所以我发现了解决方案。我需要使用STRING数据类型声明,同时用单引号括起选项卡的名称:
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, "tTest", "C:\Users\tnh3spb\Desktop\test.xlsx", True, "'#test#$'"