Я использую функции, подобные приведенным ниже, для создания временных таблиц из запросов кросс-таблиц.
Function SQL_Tester()
Dim sql As String
If DCount("*", "MSysObjects", "[Name]='tblTemp'") Then
DoCmd.DeleteObject acTable, "tblTemp"
End If
sql = "SELECT * INTO tblTemp from TblMain;"
Debug.Print (sql)
Set db = CurrentDb
db.Execute (sql)
End Function
Я делаю это так, чтобы затем я мог использовать больше vba, чтобы использовать временную таблицу для Excel, использовать некоторые функции Excel (формулы и тому подобное), а затем возвращать значения в исходную таблицу (tblMain). Я просто запутался в том, что после оператора Select INTO мне нужно добавить новый дополнительный столбец во временную таблицу, и я не знаю, как это сделать:
sql = "Create Table..."
похоже на единственный способ, которым я знаю, как это сделать, и, конечно, это не очень хорошо работает с вышеуказанным подходом, потому что я не могу создать таблицу, которая уже была создана после факта, и я не могу создать ее раньше, потому что подход оператора SELECT INTO вернет сообщение «таблица уже существует».
Любая помощь? спасибо, ребята!