1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
| Private Sub valider_Click()
' On Error GoTo valider_Click_Err
Dim test As String
Dim cnx As New ADODB.Connection
Set cnx = CurrentProject.Connection
Dim rstnumcpte As New ADODB.Recordset
Dim source As String
test = "OK"
rstnumcpte.Open "select num_compte from R_ouv_cpte_en_attente", cnx, , adLockOptimistic
With rstnumcpte
Do Until .EOF Or test = "KO"
'MsgBox num_compte.value
' Pas de compte dans la plage 45.xxx.30000.x à 45.xxx.39999.x
If Left(num_compte.Value, 2) = "45" And Mid(num_compte.Value, 6, 5) >= 30000 And Mid(num_compte.Value, 6, 5) < 40000 Then
test = "KO"
End If
' Pas de compte dans la plage 46.xxx.90000.x à 46.xxx.99999.x
If Left(num_compte.Value, 2) = "46" And Mid(num_compte.Value, 6, 5) >= 90000 And Mid(num_compte.Value, 6, 5) <= 99999 Then
test = "KO"
End If
' Pas de compte dans la plage 48.xxx.50000.x à 48.xxx.59999.x
If Left(num_compte.Value, 2) = "48" And Mid(num_compte.Value, 6, 5) >= 50000 And Mid(num_compte.Value, 6, 5) <= 59999 Then
test = "KO"
End If
' Pas de compte dans la plage 07.xxx.80000.x à 07.xxx.99999.x
If Left(num_compte.Value, 2) = "07" And Mid(num_compte.Value, 6, 5) >= 80000 And Mid(num_compte.Value, 6, 5) <= 99999 Then
test = "KO"
End If
' Pas de compte dans la plage 08.xxx.60000.x à 08.xxx.69999.x
If Left(rstnumcpte("num_compte"), 2) = "08" And Mid(rstnumcpte("num_compte"), 6, 5) >= 60000 And Mid(rstnumcpte("num_compte"), 6, 5) <= 69999 Then
test = "KO"
End If
' Pas de compte dans la plage 28.xxx.87000.x à 28.xxx.99999.x
If Left(num_compte.Value, 2) = "28" And Mid(num_compte.Value, 6, 5) >= 87000 And Mid(num_compte.Value, 6, 5) <= 69999 Then
test = "KO"
End If
' Pas de compte dans la plage 49.xxx.86000.x à 49.xxx.89999.x
If Left(num_compte.Value, 2) = "49" And Mid(num_compte.Value, 6, 5) >= 86000 And Mid(num_compte.Value, 6, 5) <= 89999 Then
test = "KO"
End If
.MoveNext
Loop
End With
rstnumcpte.Close
Set rstnumcpte = Nothing
cnx.Close
If test = "KO" Then
MsgBox " Les n° de comptes saisis ne doivent pas être dans les plages suivantes : " & Chr(10) & _
" 45.xxx.30000.x à 45.xxx.39999.x" & Chr(10) & _
" 46.xxx.90000.x à 46.xxx.99999.x" & Chr(10) & _
" 48.xxx.50000.x à 48.xxx.59999.x" & Chr(10) & _
" 07.xxx.80000.x à 07.xxx.99999.x" & Chr(10) & _
" 08.xxx.60000.x à 08.xxx.69999.x" & Chr(10) & _
" 28.xxx.87000.x à 28.xxx.99999.x" & Chr(10) & _
" 49.xxx.86000.x à 49.xxx.89999.x", , "Validation du numéro de compte"
Exit Sub
End If
valider_Click_Err_Exit:
Exit Sub
valider_Click_Err:
MsgBox "ERREUR 020 - FAIRE MESSAGE A L'ADMINISTRATEUR AVEC CODE ERREUR"
Resume valider_Click_Err_Exit
End Sub |
Partager