【发布时间】:2010-12-28 14:31:33
【问题描述】:
我正在尝试使用 Excel VBA 从 Access 2007 ACCDB 格式数据库中获取所有表的列表。
我关注了这个帖子:
How can I get table names from an MS Access Database?
使用:
SELECT MSysObjects.Name AS table_name
FROM MSysObjects
WHERE
(((Left([Name],1))<>"~")
AND ((Left([Name],4))<>"MSys")
AND ((MSysObjects.Type) In (1,4,6)))
order by MSysObjects.Name
但我收到此错误。
无法读取记录; 'MSysObjects' 没有读取权限
我希望能够仅使用 SQL 语句而不是 OpenSchema 方法来获取表名。
我认为问题出在 Access 上。我不确定。
有人知道吗?
【问题讨论】:
-
你的编程环境是什么?您打算将结果用于什么目的?
-
另外,您的文件格式是什么 - ACCDB 或 MDB?
-
感谢您的提问。我正在使用 ACCDB。
-
另外,我正在使用 VBA 将信息从 Access 传输到 Excel。
-
您的 VBA 是在 Excel 中还是在 Access 中?
标签: excel ms-access ms-access-2007 vba