Morning All;
I have an after update event on a combo box as follows:
Everything works in the code except case 4, the code stops and gives the following error:
is this because there are to may 'Or' statements in the code? - If so; how can i write the code to allow more fields?
I have 14 cases to add for the purposes of checking for duplicate entries and preventing duplicates from being created.
Your help as always is appreciated.
Kind Regards
Tor Fey
I have an after update event on a combo box as follows:
Code:
Private Sub checktype_AfterUpdate()
Dim intCheckName As Integer
intCheckName = 1
If Nz(Me.check_name1, 0) = 0 Then 'apply selected name to check_Name1
intCheckName = 1
ElseIf Nz(Me.check_name2, 0) = 0 Then 'apply selected name to check_Name2
intCheckName = 2
ElseIf Nz(Me.check_name3, 0) = 0 Then 'apply selected name to check_Name3
intCheckName = 3
ElseIf Nz(Me.check_name4, 0) = 0 Then 'apply selected name to check_Name4
intCheckName = 4
ElseIf Nz(Me.check_name5, 0) = 0 Then 'apply selected name to check_Name5
intCheckName = 5
ElseIf Nz(Me.check_name6, 0) = 0 Then 'apply selected name to check_Name6
intCheckName = 6
ElseIf Nz(Me.check_name7, 0) = 0 Then 'apply selected name to check_Name7
intCheckName = 7
ElseIf Nz(Me.check_name8, 0) = 0 Then 'apply selected name to check_Name8
intCheckName = 8
ElseIf Nz(Me.check_name9, 0) = 0 Then 'apply selected name to check_Name9
intCheckName = 9
ElseIf Nz(Me.check_name10, 0) = 0 Then 'apply selected name to check_Name10
intCheckName = 10
ElseIf Nz(Me.check_name11, 0) = 0 Then 'apply selected name to check_Name11
intCheckName = 11
ElseIf Nz(Me.check_name12, 0) = 0 Then 'apply selected name to check_Name12
intCheckName = 12
ElseIf Nz(Me.check_name13, 0) = 0 Then 'apply selected name to check_Name13
intCheckName = 13
ElseIf Nz(Me.check_name14, 0) = 0 Then 'apply selected name to check_Name14
intCheckName = 14
Else 'all 14 check_Names contain a value
MsgBox "All Benefit Types selected", vbInformation
Exit Sub
End If
Select Case intCheckName 'check preceding check_Name fields do not equal current name
Case 1
Me.check_name1 = Me.checktype
Case 2
If Me.checktype = Me.check_name1 Then 'matches Me.check_Name1
MsgBox "The name " & Me.checktype & " has already been submitted", vbInformation
Exit Sub
End If
Me.check_name2 = Me.checktype
Case 3
If Me.checktype = Me.check_name1 Or Me.checktype = Me.check_name2 Then
MsgBox "The name " & Me.checktype & " has already been submitted", vbInformation
Exit Sub
End If
Me.check_name3 = Me.checktype
Case 4
If Me.checktype = Me.check_name1 Or Me.check_name2 Or Me.checktype = Me.check_name3 Then
MsgBox "The name " & Me.checktype & " has already been submitted", vbInformation
Exit Sub
End If
Me.check_name4 = Me.checktype
End Select
End Sub
Everything works in the code except case 4, the code stops and gives the following error:
- 'Run-time error 13' - Type mismatch
is this because there are to may 'Or' statements in the code? - If so; how can i write the code to allow more fields?
I have 14 cases to add for the purposes of checking for duplicate entries and preventing duplicates from being created.
Your help as always is appreciated.
Kind Regards
Tor Fey