VÉRIFIER LA VALIDITÉ D'UN COMPTE BANCAIRE OU POSTAL

Signaler
Messages postés
57
Date d'inscription
samedi 30 mars 2002
Statut
Membre
Dernière intervention
24 mars 2003
-
Messages postés
2
Date d'inscription
vendredi 14 septembre 2007
Statut
Membre
Dernière intervention
12 décembre 2007
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/3997-verifier-la-validite-d-un-compte-bancaire-ou-postal

Messages postés
2
Date d'inscription
vendredi 14 septembre 2007
Statut
Membre
Dernière intervention
12 décembre 2007

Public Function VerifReferences(Banque, Guichet, NoCompte, Rib) As Boolean
Dim car As String, i As Integer
Dim a As Long, b As Long, C As Long

Ch = "12345678912345678923456789"
For i = 1 To Len(NoCompte)
car = Mid(NoCompte, i, 1)
If Not IsNumeric(car) Then
car = Mid(Ch, Asc(car) - 64, 1)
End If
Compte = Compte & car
Next

reference = Banque & Guichet & Compte
a = Mid(reference, 1, 7)
b = Mid(reference, 8, 7)
C = Mid(reference, 15, 7)
X = (62 * a + 34 * b + 3 * C) Mod 97
Cle = 97 - X
If Cle Val(Rib) Then VerifReferences True Else VerifReferences = False

End Function
Messages postés
25
Date d'inscription
samedi 7 octobre 2000
Statut
Membre
Dernière intervention
16 décembre 2008

merci à "cboulas" bien vu!!! j'ai modifié la source...
Babson
Messages postés
2641
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
8 janvier 2014
14
Salut, ton code m'a bien arranger mon affaire jusqu'au moment où je n'avais pas fait attention à une erreur.
Effectivement lors de la saisi d'un RIB je suis tomber sur une erreur lorsque le rib contenais la lettre K.
Le code cherchais la lettre k ou lieu de K. et oui une simple minuscule au lieu d'une majuscule. lol
Bref voici donc le nouveau Select qu'il faut mettre : (Fonction mReturnAccNo - Module ModValidation)

Select Case UCase(sDigit)
Case "A", "J"
sNewDigit = "1"
Case "B", "K", "S"
sNewDigit = "2"
Case "C", "L", "T"
sNewDigit = "3"
Case "D", "M", "U"
sNewDigit = "4"
Case "E", "N", "V"
sNewDigit = "5"
Case "F", "O", "W"
sNewDigit = "6"
Case "G", "P", "X"
sNewDigit = "7"
Case "H", "Q", "Y"
sNewDigit = "8"
Case "I", "R", "Z"
sNewDigit = "9"
End Select
Messages postés
57
Date d'inscription
samedi 30 mars 2002
Statut
Membre
Dernière intervention
24 mars 2003

Ok ça marche
jyb
Messages postés
57
Date d'inscription
samedi 30 mars 2002
Statut
Membre
Dernière intervention
24 mars 2003

J'ai essayé, impossible de saisir un quelconque chiffre dès la première zone de texte.!!!! jean yves