代码如下:
strOut="C:\Users\....file.xlsx"
xlSheetName="WA100!"
DoCmd.TransferSpreadsheet TransferType:=acLink, TableName:="excelLink", FileName:=strOut, HasFieldNames:=True, Range:=xlSheetName
有没有理由不起作用?在我看来,这在语法上是正确的。
答案 0 :(得分:1)
列出所有工作表名称,然后查看它们是否如您所想。
Sub SheetNames()
Columns(1).Insert
For i = 1 To Sheets.Count
Cells(i, 1) = Sheets(i).Name
Next i
End Sub
答案 1 :(得分:0)
您可以试试吗?进行修改以满足您的需求。另外,您能摆脱“!”符号,至少用于测试目的。使它在简单的上下文中工作,然后您就可以逐步处理越来越复杂的事情。通常,从更复杂的事情开始不是一个好主意,除非您真的有信心知道自己在做什么。
DoCmd.TransferSpreadsheet acLink, 3, _
"Employees","C:\Lotus\Newemps.wk3", True, "A1:G12"
对于与DoCmd.TransferSpreadsheet相关的主题,这是一个很好的资源。
http://access-excel.tips/access-vba-cocmd-transferspreadsheet/