在“文件”菜单的“信息”部分的ms-access-2016中,有一个指向“查看和编辑”数据库属性的链接。单击链接时,会出现一个包含5个选项卡的框,最右边的是自定义选项卡。此选项卡提供用于向数据库文档添加自定义属性的用户界面。
我通过添加名为“ask”的布尔属性来测试它。这很好用;它可以节省;它在退出并重新启动后返回。现在我想在vba中访问该属性。
我使用以下代码枚举了数据库属性:
Public Sub paEnumerateDatabaseProperties()
Dim db As DAO.Database
Dim prp As Property
Set db = CurrentDb
For Each prp In db.Properties
On Error Resume Next
Debug.Print prp.Name, prp.value, prp.Type
If Err.Number <> 0 Then Debug.Print "Error: "; Err.Number, prp.Name
Next prp
Set prp = Nothing
Set db = Nothing
End Sub
运行此代码将创建db.properties集合中52个属性中的51个属性的列表,以及connections属性的一个错误。但我的自定义Ask属性不在此集合中。它也不在应用程序选项集合中。
有人知道它藏在哪里吗?谢谢
在名为“UserDefined”的DAO.Document
中查找您的自定义属性,该属性包含在“Databases”容器中。
'For Each prp In db.Properties
For Each prp In db.Containers("Databases").Documents("UserDefined").Properties