По сути, Excel и VBA не являются технологиями параллельной обработки.Вам нужно будет дождаться окончания макроса, прежде чем продолжить работу.Вы могли бы запустить этот процесс как ночную работу, поэтому все будет сделано для вас, когда вы приходите в офис утром.Или вы можете запустить процесс и пойти пообедать, выпить кофе и т. Д.
Найдите «Windows Task Scheduler» и следуйте инструкциям.
Наконец, в Excel нажмите Alt + F11, чтобы вызвать редактор VBA.Щелкните правой кнопкой мыши на «ThisWorkbook», нажмите «Вставить», нажмите «Модуль».Дважды щелкните «Модуль 1».Скопируйте код ниже:
Sub Auto_Open()
Application.DisplayAlerts = False
Application.ScreenUpdating = False
Dim con As Connection
Dim rst As Recordset
Set con = New Connection
con.Open "Provider=SQLOLEDB;Data Source=Your_Server_Name_Here;Initial Catalog=Northwind;Integrated Security=SSPI;"
Set rst = con.Execute("Exec dbo.[Ten Most Expensive Products]")
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub