Excel VBA /从特定源刷新数据而无需对话框

时间:2018-08-23 09:08:58

标签: excel vba excel-vba

我的工作簿中有一张工作表(“ Sheet2”),其中包含从TXT导入的数据。 每天从文件ZLX02S_FG_和“ sufix”刷新数据。 文件的名称和路径始终是已知的或经过计算的。

File name = ZLX02S_FG_20180821_095910.txt
Path name = C:\Users\lmisek\Desktop\WMS-L05-FG\

我尝试了以下代码:

Sub Refresh_Macro()

    With Worksheets("Sheet2").QueryTables(1)
        .Connection = "TEXT;C:\Users\lmisek\Desktop\WMS-L05-FG\ZLX02S_FG_20180821_095910.txt"
        .Refresh BackgroundQuery:=False
     End With

End Sub

刷新sheet2上的数据,但前提是要在对话框中选择文件。 我想刷新它们而不显示对话框。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

TextFilePromptOnRefresh属性就是您要寻找的。

With Worksheets("Sheet2").QueryTables(1)
   .TextFilePromptOnRefresh = False
   .Connection = "TEXT;C:\Users\lmisek\Desktop\WMS-L05-FG\ZLX02S_FG_20180821_095910.txt"
   .Refresh BackgroundQuery:=False
End With

请注意,可能还需要在代码中显式设置一些导入参数,例如定界符等。