【问题标题】:Refreshing and Saving as a text file in Excel在 Excel 中刷新并另存为文本文件
【发布时间】:2015-04-08 14:54:45
【问题描述】:

我一直在尝试自动刷新我的表(通过电源查询从 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

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

谢谢

【问题讨论】:

标签: vba excel powerquery


【解决方案1】:

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

尝试在两者之间添加:

DoEvents
Application.Wait (Now + TimeValue("0:00:05"))
DoEvents

【讨论】:

  • 非常感谢!一旦我禁用了查询的后台刷新,DoEvent 就起作用了
  • 不客气! ;) 请接受答案(在否决票下打勾)以关闭主题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-31
  • 1970-01-01
  • 2014-01-19
  • 1970-01-01
相关资源
最近更新 更多