2016-07-20 62 views
1

我目前在Access 2013中工作。如果選擇了按鈕(是/否字段),我想要鎖定子窗體中的兩個字段,這兩個字段包括恢復以前的位置和個人參考,yes/no字段是Resume Source Internal。在Access中運行VBA代碼

我的代碼:

Private Sub Resume_Source_Internal_Click() 
    If [Resume Source Internal].Value = True Then 
     [Personal Reference].Enabled = True 
     [Resume Previous Location].Enabled = False 
    Else 
     [Personal Reference].Enabled = True 
     [Resume Previous Location].Enabled = False 
    End If 
End Sub 

,我遇到的麻煩的問題是,當我選擇按鈕(是/否)什麼也沒有發生。我之前以另一種形式運行此代碼,並且完美運行。有什麼我可以錯過的?個人參考和恢復以前的位置都是查找字段。

+0

您是否嘗試過逐步編譯?停止該子項目並向前邁進。 –

+0

我現在還沒有嘗試過。 – Orange56

+0

同意w/@TedoG。 - 逐步調試是_always_在某些工作不正常時首先要做的事情。 – FreeMan

回答

0

試試這個:

Private Sub Resume_Source_Internal_Click() 
    If [Resume Source Internal].Value = True Then 
     [Personal Reference].Enabled = True 
     [Resume Previous Location].Enabled = False 
    Else 
     [Personal Reference].Enabled = False 
     [Resume Previous Location].Enabled = True 
    End If 
End Sub 

注意,在Else,我切換的FalseTrue值。如你所寫,你在If...Else

0

的兩側設置完全相同的值這個代碼是否適合你 - 在屬性表中將字段設置爲啓用和禁用一個。

當你點擊按鈕時,enabled屬性將從True切換到False,反之亦然。

Private Sub Resume_Source_Internal_Click() 

    Me.Personal_Reference.Enabled = Not Me.Personal_Reference.Enabled 
    Me.Resume_Previous_Location.Enabled = Not Me.Resume_Previous_Location.Enabled 

End Sub