2014-11-06 78 views
0

我有一個窗體,它有一個單擊過程的按鈕。 本質上,如果勾選了一個複選框(chkIncludeIDs),那麼它必須打開一個窗體並使該窗體上的文本框的屬性可見。從另一個表單設置窗體屬性中的項目vba

我現在的點擊事件代碼如下;

私人小組Update_pending_Click() 對錯誤轉到Err_Update_pending_Click

Dim stDocName As String 
Dim stLinkCriteria As String 

If Me.chkIncludeIDs = 0 Then 
    stDocName = "Pending Queries Locked" 
Else 
    stDocName = "Pending Queries Locked" 
    Forms![Pending Queries Locked]!ID.Visible = True 
End If 
DoCmd.OpenForm stDocName, , , stLinkCriteria 

Exit_Update_pending_Click: 退出小組

Err_Update_pending_Click: MSGBOX Err.Description 恢復Exit_Update_pending_Click

結束子

,我開的形式是「待查詢鎖定」 我需要做可見的文本框的ID,因爲它的默認值是可見=假

出於某種原因,我的代碼是不工作,我有點不確定爲什麼。 :/

回答

0

請爲您的控件命名,沒有像「form_pending_queries_locked」,query_my_query,txt_id,lbl_id這樣的空格,原因很多。

當您訪問控件的屬性時,您需要指定您正在訪問哪個屬性。 e.g

If Me.chkIncludeIDs.value <> 0 Then 

關於你的問題。在訪問其控件之前,您需要先打開表單。所以這將在邏輯上:打開窗體,訪問控件,更改其屬性。

代碼

這將是

Dim txt_id As Textbox 
DoCmd.OpenForm "frm_myform" 
Set txt_id = Forms![frm_myform]!txt_id 

txt_id.visible = False 

或者:您可以通過OpenArg和訪問它通過在Form_Load事件傳遞一個參數,然後這將改變當地的控件的屬性..

相關問題