以下圖片中的數據表子窗體在每個單元格中都有一個組合框。如果您在左側的單元格中選擇一個新值,則右側的單元格需要重新查詢並設置爲空(因爲右側的組合框由左側的單元格過濾)。如果數據表中只有一行,我的代碼運行良好。然而,如果有不止一個,我的代碼會將所有組合框重置到所有行的右側(這很糟糕)。我需要在我的代碼中進行更改(下面進一步列出),以僅重置與選定的組合框相同的行上的字段?如何使用VBA更新訪問數據表中當前行上的控件
這裏的第一個組合框的VBA:
Private Sub cbo_LOA_Segment1_AfterUpdate()
' requery all subsequent LOA combo boxes to
' show only LOAs matching the selected Agency AND that match the earlier LOA entries
With Me
!cbo_LOA_Segment2 = Null
!cbo_LOA_Segment2.Requery
!cbo_LOA_Segment3 = Null
!cbo_LOA_Segment3.Requery
!cbo_LOA_Segment4 = Null
!cbo_LOA_Segment4.Requery
!cbo_LOA_Segment5 = Null
!cbo_LOA_Segment5.Requery
!cbo_LOA_Segment6 = Null
!cbo_LOA_Segment6.Requery
!cbo_LOA_Segment7 = Null
!cbo_LOA_Segment7.Requery
!cbo_LOA_Segment8 = Null
!cbo_LOA_Segment8.Requery
!cbo_LOA_Segment9 = Null
!cbo_LOA_Segment9.Requery
!cbo_LOA_Segment10 = Null
End With
End Sub
會發生這種情況,因爲控件是相同的,只是每個控件的數據不同。在過去,我使用了多行文本框,模仿子表單,然後使用諸如LOA_Segment2_Row1 ..... 5之類的東西等。 –