Обновить данные и выйти с сохранением макроса Excel

Мне нужно обновить данные из источника 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

Это нормально с обновлением после открытия, но оно не выходит. Что я делаю не так?


person Keithx    schedule 11.11.2014    source источник


Ответы (1)


На самом деле вы не говорите, что книга закрывается в любой момент...

Кроме того, процедура Auto_Open() технически запускается после открытия книги, поэтому вам не нужно вызывать отдельные процедуры:

Также также - вы не можете закрыть книгу после выхода из приложения...

Попробуйте вместо этого:

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

person SierraOscar    schedule 11.11.2014