2017-01-14 8 views
2

Я пытаюсь редактировать .NavigationButtons свойство нескольких MS Access Form объектов с использованием VBScript.Установить свойство доступа MS Access, используя VBScript

Вот мой код запуска:

Dim access 
Set access = CreateObject("Access.Application") 

access.OpenCurrentDatabase "d:/mydb.accdb" 

Теперь, когда база данных открыта, я могу получить доступ к его формы, вызвав .CurrentProject.AllForms из Application объекта. Этот метод возвращает коллекцию объектов AccessObject. Я могу установить их свойства, просто называя метод .Properties.Add, но он устанавливает свойство AccessObject, и это не то, что я хочу.

Я также попытался пройти через .Forms объект Application объект. Это свойство хранит коллекцию форм с реальными свойствами формы, и .NavigationButtons является одним из них. Однако эта коллекция доступна только для чтения, и я не могу установить новые значения для этих свойств.

Есть ли способ обновить Form собственность из программы VBScript?

ответ

2

И наконец, я смог заставить его работать с использованием как .CurrentProject.AllForms, так и .Forms методов Application объекта. Мне не хватало одной детали - вам нужно сохранить форму после того, как вы изменили ее свойство.

For Each form.Name access.CurrentProject.AllForms 
    access.DoCmd.OpenForm form.Name, 1 
    access.Forms(form.Name).NavigationButtons = True 'Or another property. 
    access.DoCmd.Close 2, form.Name, 1 'Where "1" is equal to acSaveYes. 
Next