2013-01-07 50 views
0

我有一個ListBox對象位於訪問中的選項卡形式的子窗體中。我希望訪問在它選擇的值,當我使用下面的在新窗口中打開另一種形式:在訪問2010中訪問其他窗體上的控件的值

DoCmd.OpenForm "New form", , , , , acDialog 

假設我的主要形式與標籤式界面被稱爲「主頁」,子窗體被稱爲「搜索通過項目「和列表框對象被稱爲」filteredList「,我希望在加載窗體期間從」新窗體「中的filteredList中獲取值。我對在線提供的各種語法感到困惑,因爲它們似乎不適合我。我可以知道什麼是正確的語法?非常感謝!

回答

1

有很多方法可以做到這一點。如果代碼是在子窗體

DoCmd.OpenForm "New form", , , , , acDialog, _ 
    Me.[NameOfSubformControlNotFormContained].Form.filteredList 

,你說:讓我們說,你的代碼來打開第二種形式是對主頁,你有一個簡單的,沒有多選列表框,您可以使用OpenArg :

DoCmd.OpenForm "New form", , , , , acDialog, Me.filteredList 

要引用子窗體的另一種形式:

Forms![Main Form]![NameOfSubformControlNotFormContained].Form!filteredList 

或者

Forms![Main Form].[NameOfSubformControlNotFormContained].Form.filteredList 

參見:http://access.mvps.org/access/forms/frm0031.htm

+0

嗯,我已經試過表格[主表] [NameOfSubformControlNotFormContained] .FORM filteredList.value並把它添加到作爲一個手錶,但它告訴我,<對象不支持此屬性!!或方法> ... – Laughy

+0

這個錯誤表明你要麼有錯誤的對象,要麼你的表單已經損壞。要檢查該對象,請參閱http://wiki.lessthandot.com/index.php/Referring_to_a_control_on_a_subform。對於腐敗,請嘗試壓縮並修復和反編譯,如果失敗,請導入新數據庫(Allen Browne http://allenbrowne.com/ser-47.html) – Fionnuala