DoCmd.TransferSpreadsheet无法识别工作表名称

时间:2013-06-27 18:37:22

标签: excel vba ms-access

我正在尝试使用DoCmd.TransferSpreadsheet从Excel工作簿导入工作表。工作表的名称为XYZ Priority

我正在调用方法如下:

DoCmd.TransferSpreadsheet FileName:=filePath, tablename:="XYZ", _
                          hasfieldnames:=True, range:="[XYZ Priority]!"

我收到此错误消息:

'[XYZ Priority]$' is not a valid name. Make sure that it does not 
include invalid characters or punctuation and that it is not too long.

似乎空间正是导致问题的原因。我已经尝试了几种不同的方法来识别范围,有没有感叹号,所有都失败了:

"XYZ Priority"
"XYZ_Priority"
"'XYZ Priority'"

如何正确地将表单传递给TransferSpreadsheet

1 个答案:

答案 0 :(得分:3)

仅使用工作表名称,后跟$符号。

DoCmd.TransferSpreadsheet FileName:=filePath, TableName:="XYZ", _
    HasFieldNames:=True, Range:="XYZ Priority$"