[英]vba in access and conditional formatting of forms
我有一個收集不同類型數據的表格。 其中之一是文檔類型。 在訪問選項卡時,用戶必須從下拉列表中選擇一種文檔類型。 如果將文檔選擇為“ NDA”,則必須啟用名為“ NDA類型”的選項卡。 以下是我嘗試使用的代碼:
Private Sub doc_AfterUpdate()
If doc.Value="NDA" then
tnda.enabled=true
else
tnda.enabled=false
End if
End Sub
pgm很簡單,但是每當我運行我的表單時,它總是顯示“錯誤:類型不匹配”,並且代碼停止工作。
感謝您為我提供上述代碼。 這次,我嘗試了使用更多選項的更復雜形式的代碼。 我試圖禁用所有其他選項,並僅根據我選擇的選項(從表單的“文檔類型”選項卡中)啟用它們。以下是代碼:
Private Sub doc_BeforeUpdate(cancel as integer)
tnda.enabled=false
tagr.enabled=false
odoc.enabled=false
End Sub
Private Sub doc_AfterUpdate()
Select Case doc.column(1)
Case "NDA"
tnda.enabled=true
Case "Agreement"
tagr.enabled=true
Case "Other"
odoc.enabled=true
Case Else
End Select
End Sub
Private Sub doc_Oncurrent()
Select Case doc.column(1)
Case "NDA"
tnda.enabled=true
Case "Agreement"
tagr.enabled=true
Case "Other"
odoc.enabled=true
Case Else
End Select
End Sub
運行pgm后,無論選擇何種文檔,我的所有選項卡均保持禁用狀態。 請在這方面提供寶貴的意見。 注釋tnda:NDA標記的類型:協議類型odoc:其他文檔和doc =文檔類型在此處查找我的表格圖像
這是因為Doc是一個組合框,因此可能綁定到數字ID。
所以:
If doc.Value = <insert value of ID of text "NDA"> then
或使用包含“ NDA”的列ID,很可能是下一個:
If doc.Column(1) = "NDA" then
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.