从 Access for Excel GetOpenFileName 设置默认文件路径

Posted

技术标签:

【中文标题】从 Access for Excel GetOpenFileName 设置默认文件路径【英文标题】:Setting default file path from Access for Excel GetOpenFileName 【发布时间】:2021-11-10 23:07:49 【问题描述】:

我正在使用 Access 宏在 Excel 中打开一个 csv 文件。我这样做是为了获取文件名,然后使用 TransferText 函数将文件导入 Access 表中。

我想指定一个默认路径来消除最终用户的一些导航。我已经尝试过 ChDrive 和 ChDir,但 GetOpenFileName 仍会将我带到网络上的个人驱动器。

下面是我正在使用的代码。任何建议或建议将不胜感激/提前致谢.....

Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.Visible = True
            
ChDrive "V:"                                                                               
ChDir "V:\Accounting\Projects\In Work\Project Database\"
    
RawData = ""
RawData = ExcelApp.Application.GetOpenFilename              
    
Set ExcelApp = Nothing

DoCmd.TransferText acImportDelim, , "tbl_Stage", RawData, True

【问题讨论】:

【参考方案1】:

您需要更改 Excel 对象的驱动器和文件夹。目前,您正在更改 Access 对象的驱动器和文件夹。

Excelapp.DefaultFilePath = "V:\Accounting\Projects\In Work\Project Database\"

除非您使用的是非常旧版本的 Excel,否则您可以使用 FileDialog 对象进行更多控制:

Set FD = Excelapp.FileDialog(msoFileDialogFilePicker)
With FD
    .InitialFileName = ActiveDocument.Path
    .Show
End With

exFile = FD.SelectedItems(1)

【讨论】:

@david .....谢谢。这样就成功了,并且将为最终用户带来更好的体验。再次感谢.......

以上是关于从 Access for Excel GetOpenFileName 设置默认文件路径的主要内容,如果未能解决你的问题,请参考以下文章

使用 For 循环选择 Access 中的特定字段并将它们粘贴到 Excel

Navicat for MySQL导入access只能进去列明进不去数据

将查询从 Access 复制到 Excel

从 Access 将 Excel 窗口置于前台

将 EAN-13 从 Excel 导入 Access

打开多个 Excel 实例时如何通过 Excel 宏将数据从 Excel 导出到 Access