하위 폼에 두 개의 콤보 상자가 있습니다. 첫 번째 콤보 상자가 두 번째 콤보 상자를 채우는 데 사용됩니다. 이것들은 폼의 세부 구역에 배치됩니다. 나는 그들이이 방법으로 일하기를 원한다. 첫 번째 콤보 박스에서 어떤 값을 선택하면 같은 행의 두 번째 콤보 박스가 관련 값으로 채워지 길 원한다.다른 행에 대해 콤보 상자 캐스케이드 효과가 작동하지 않습니다.
지금부터는 이것을 구현하려했는데 행 1의 첫 번째 콤보 상자에서 값을 선택하면 같은 행의 두 번째 콤보 상자가 채워지는 것을 볼 수 있지만 첫 번째 집합에서 값을 선택하면됩니다. comboboxes 위의 comboboxes 두 번째 집합의 값이 변경되거나 null이되는 것을 볼 수 있습니다.
여기에 코드입니다 :
제 1 회 콤보는 cboRCMTask입니다 :
Private Sub cboRCMTask_AfterUpdate()
Me.cboRCMTaskOptions.RowSource = "SELECT ID, RCMTaskOptions FROM tblRCMTaskOptions WHERE RCM_ID=" & Me.cboRCMTask.Column(0) & ";"
Me.cboRCMTaskOptions = Me.cboRCMTaskOptions.ItemData(0)
Me.cboRCMTaskOptions.Requery
End Sub
cboRCMTaskOptions 두 번째 콤보입니다.
form_current 이벤트 :
Private Sub Form_Current()
Me.cboRCMTask.RowSource = "SELECT ID, RCMTask FROM tblRCMTask;"
If IsNull(txtRCM_ID) Then
Me.cboRCMTask = Me.cboRCMTask.ItemData(0)
End If
Me.cboRCMTaskOptions.RowSource = "SELECT ID, RCMTaskOptions FROM tblRCMTaskOptions WHERE RCM_ID=" & Me.cboRCMTask.Column(0) & ";"
If IsNull(txtRCMOption_ID) Then
Me.cboRCMTaskOptions = Me.cboRCMTaskOptions.ItemData(0)
End If
End Sub
클릭 이벤트는 권장하지 않습니다. 이것이 단일 형식 인 경우, 현재 이벤트와 업데이트 1 이후의 이벤트는 계단식 조합에 대한 일반적인 이벤트입니다. – Fionnuala
두 번째 콤보 상자를 다시 쿼리 할뿐만 아니라 폼의 본문 섹션에 기본값을 표시합니다. – user1175126
@ user1175126 연속 양식을 사용하고 있습니까? 당신이 있다면이 모든 일이 일어나지 않을 것이기 때문입니다. – Fionnuala