2017-01-14 49 views
2

我試圖編輯.NavigationButtons使用VBScript的多個MS Access對象的屬性Form對象。使用VBScript設置MS Access窗體屬性

這裏是我的啓動代碼:

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

access.OpenCurrentDatabase "d:/mydb.accdb" 

現在,當數據庫是開放的,我可以通過調用Application對象.CurrentProject.AllForms訪問它的形式。此方法返回一個AccessObject對象的集合。我可以通過簡單地調用.Properties.Add方法來設置它們的屬性,但它設置了AccessObject的屬性,這不是我想要的。

我也嘗試循環.FormsApplication對象的屬性。該屬性存儲一組具有真實表單屬性的表單,.NavigationButtons就是其中之一。但是,此集合是隻讀的,我無法爲這些屬性設置新值。

有什麼辦法可以從VBScript程序更新Form屬性?

回答

2

最後,我能夠使用對象的.CurrentProject.AllForms.Forms方法工作。我錯過了一個細節 - 在更改屬性後必須保存表單。

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