我使用如下函数从交叉表查询中创建临时表。
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 语句方法会返回“表已存在”消息。
有什么帮助吗?多谢你们!