2

我一直在尝试自动刷新我的表(通过电源查询从 SQL 数据库获得)并将其直接保存为文本文件(制表符分隔)我对 VBA 非常陌生,我使用的宏是

    Public Sub UpdatePowerQueries()
 'Macro to update the Power Query script(s) and save the file as .txt

Dim cn As WorkbookConnection

For Each cn In ThisWorkbook.Connections
 If Left(cn, 13) = "Power Query -" Then cn.Refresh
 Next cn

Application.DisplayAlerts = False
ActiveSheet.SaveAs Filename:="customfile" & Format(Date, "yyyymmdd") & ".txt", FileFormat:=xlTextWindows
Application.DisplayAlerts = True


 End Sub

现在我一直面临的问题是刷新部分和保存部分可以自己工作,但是如果我将它们放在同一个宏中,保存部分发生得太快,并且文本文件是空的。谁能帮我 ?

谢谢

4

1 回答 1

0

就个人而言,我选择了一点耐心,并添加了一个计时器以在几秒钟后继续!

尝试在两者之间添加:

DoEvents
Application.Wait (Now + TimeValue("0:00:05"))
DoEvents
于 2015-04-08T15:11:20.023 回答