在VBA中,可以使用TableDefs
对象来找出MS Access中的查询创建了哪个表。以下是一个示例代码:
Sub FindTableFromQuery()
Dim db As DAO.Database
Dim qdf As DAO.QueryDef
Dim strSQL As String
' 设置数据库路径和名称
Set db = OpenDatabase("C:\Path\To\Your\Database.accdb")
' 设置查询名称
strSQL = "YourQueryName"
' 获取查询定义对象
Set qdf = db.QueryDefs(strSQL)
' 获取查询所涉及的表名
For Each tdf In qdf.TableDefs
Debug.Print tdf.Name
Next tdf
' 释放对象
Set qdf = Nothing
Set db = Nothing
End Sub
上述代码中,首先使用OpenDatabase
方法打开指定的数据库文件,然后使用QueryDefs
属性获取查询定义对象。接下来,通过遍历TableDefs
集合,可以获取查询所涉及的所有表名。最后,释放相关对象。
这种方法可以帮助您从VBA中找出MS Access中的查询创建了哪个表。
领取专属 10元无门槛券
手把手带您无忧上云