我有兩種形式:
面試大師和面試詳情
InterviewDetail在InterviewMaster中作為子表單打開,這兩個表單通過一個名為InterviewID的公共欄位鏈接
在InterviewDetail我有一個名為Questiontype的文本框和一個名為InterviewDropdown的組合框。
下拉串列中的資料因文本框中的資料而異。為了實作這一點,我有一個下一步按鈕可以轉到下一個問題。每當我單擊下一步時,以下運行:
Dim ctlCombo As Control
Set ctlCombo = Forms!InterviewDetail!cmbInterviewDropdown
ctlCombo.Requery
我的組合框的行源設定設定為查找所需的答案,這同樣基于文本框的值:
SELECT [queryAnswerOptions].[Answer] FROM queryAnswerOptions ORDER BY [Answer];
所以選項由我的查詢決定,稱為queryAnswerOptions
因此,當我使用下一個和上一個按鈕回圈瀏覽我的問題時,下拉選項會根據我的文本框的值進行更新。當我從導航窗格打開子表單時,這非常有效。但是,當我打開主表單并單擊下一個按鈕時,我的下拉串列沒有任何值。我試過重新查詢子表單但沒有運氣。我也嘗試從我的主表單全屏打開子表單,但這也不起作用。我也不想走那條路,因為它不適用于我的表單的整體流程。
任何幫助將不勝感激。
uj5u.com熱心網友回復:
查詢 WHERE 條件引數的問題是當表單作為子表單安裝時,表單參考不再起作用,因為它必須使用子表單容器控制元件名稱。我總是將容器控制元件命名為與其所持有的物件不同的名稱,例如 ctrDetails。
選項是將 SQL 陳述句直接放在組合框 RowSource 中,而不是將組合框 RowSource 基于動態引數化查詢物件 - 然后無論表單是獨立的還是子表單,它都可以作業。
SELECT Answer FROM InterviewAnswers WHERE QuestionID = [txtQuestionID] ORDER BY Answer;
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/497870.html
上一篇:已解決:VBAAccess2010執行MySQL從子表單中選擇直通并將輸出記錄集發送到父表單
下一篇:訪問錯誤運行時2447插入到表中
