0

我需要从 ole db 源刷新数据,同时打开 excel 和之后保存并退出。这是我的宏代码:

Sub auto_open()
    Call DataRefresh
End Sub

Sub DataRefresh()
    TimeToRun = Now
    Application.OnTime TimeToRun, "Refresh"
End Sub

Sub Refresh()
    ActiveWorkbook.Connections("Shas").Refresh
End Sub

Sub auto_close()
    Application.OnTime TimeToRun, "Refresh", , True
    Application.Quit
    ThisWoorkbook.Close SaveChanges:=True
End Sub

开启后更新就可以了,但是不退出。我究竟做错了什么?

4

1 回答 1

0

你实际上并没有告诉工作簿在任何时候关闭......

此外,从技术上讲,Auto_Open() 例程在工作簿完成打开触发,因此您无需调用单独的例程:

另外 - 退出应用程序后无法关闭工作簿...

试试这个:

Sub auto_open() ActiveWorkbook.Connections("Shas").Refresh DoEvents ThisWoorkbook.Close SaveChanges:=True End Sub

于 2014-11-11T17:31:47.377 回答