我有一段代码,在打开数据库时导入电子表格。最初我有编码的电子表格的路径,但是当电子表格版本更改时,路径可能会发生变化。最新路径现在存储在全局参数表中。我无法使用变量处理代码,也许我正在做一些愚蠢的事情,我不知道,我是VB / VBA的新手。
Function Import_Menu()
Dim db As DAO.Database
Set db = CurrentDb
Dim mpath As String
mpath = DLookup("MenuPath", "Global", "ID = 1")
On Error Resume Next: db.TableDefs.Delete "Activity_Menu": On Error GoTo 0
db.TableDefs.Refresh
DoCmd.TransferSpreadsheet _
TransferType:=acImport, _
SpreadsheetType:=acSpreadsheetTypeExcel9, _
TableName:="Activity_Menu", _
FileName:=" & mpath & ", _
HasFieldNames:=False, _
Range:="Task Menu!A3:AF120"
db.TableDefs.Refresh
db.Close: Set db = Nothing
End Function
答案 0 :(得分:0)
此;
FileName:=" & mpath & ", _
导致字符串& mpath &
不正确。
如果mpath
是完整路径和文件名:
FileName:= mpath, _
如果它只是一条路径:
FileName:= mpath & "\BLA.BLOOP", _
(确保在需要时添加\
)