У меня есть настройка процедуры VBA в Excel, чтобы взять некоторый текст, вставленный на вкладку Excel, и отправить его в виде текста команды для выполнения запроса SQL.
Однако в моем запросе у меня есть 3 разные таблицы, которые я хочу вернуть отдельно (отсюда 3 разных соединения в моем коде VBA).
Есть ли способ использовать мой запрос для возврата трех разных таблиц, чтобы мне не приходилось запускать запрос 3 раза, чтобы просто получить другой оператор выбора в конце?
Код конца запроса:
SELECT * FROM #MailMergeFormatStep1
SELECT * FROM #MailMergeFormatStep2
SELECT * FROM #MailMergeFormatStep3
Я хочу, чтобы результаты каждого из этих операторов выбора были запущены и возвращены в отдельное табличное соединение в Excel.
Код:
Sub UploadCheckerQuery()
ActiveWorkbook.Connections("UploadCheckerConnection1").ODBCConnection.CommandText = Sheets("SQL1").Range("A5:A400").Value
ActiveWorkbook.Connections("UploadCheckerConnection1").Refresh
ActiveWorkbook.Connections("UploadCheckerConnection2").ODBCConnection.CommandText = Sheets("SQL2").Range("A5:A400").Value
ActiveWorkbook.Connections("UploadCheckerConnection2").Refresh
ActiveWorkbook.Connections("UploadCheckerConnection3").ODBCConnection.CommandText = Sheets("SQL3").Range("A5:A400").Value
ActiveWorkbook.Connections("UploadCheckerConnection3").Refresh
End Sub