получить пользовательские свойства базы данных в VBA - PullRequest
0 голосов
/ 11 сентября 2018

В ms-access-2016 в разделе info меню File есть ссылка на Просмотр и редактирование свойств базы данных. При нажатии на ссылку появляется окно с 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 

Выполнение этого кода создает список из 51 свойства из 52 в коллекции db.properties и одну ошибку для свойства connections. Но мое свойство Ask не входит в эту коллекцию. Этого также не было в коллекции опций приложения.

Кто-нибудь знает, где он прячется? Спасибо

1 Ответ

0 голосов
/ 11 сентября 2018

Найдите ваше пользовательское свойство в DAO.Document с именем "UserDefined" , которое содержится в "Базы данных" контейнера.

'For Each prp In db.Properties
For Each prp In db.Containers("Databases").Documents("UserDefined").Properties
...