Extraire le numéro de chèque en Formule et en VBA

MJ13

XLDnaute Barbatruc
Bonjour à tous

J'aimerai savoir comment facilement en formule et en VBA, extraire le numéro de chèque d'une colonne (voir exemple joint).

J'accepte aussi les fonctions.

Merci d'avance :).
 

Pièces jointes

  • Extraire_Numéro_Cheque_MJ.xls
    26 KB · Affichages: 226
  • Extraire_Numéro_Cheque_MJ.xls
    26 KB · Affichages: 249
  • Extraire_Numéro_Cheque_MJ.xls
    26 KB · Affichages: 239

Tibo

XLDnaute Barbatruc
Re : Extraire le numéro de chèque en Formule et en VBA

Bonjour Michel,

Par formule, et sous réserve que le numéro de chèque comporte toujours 4 chiffres (et que tout nombre à 4 chiffre corresponde bien au numéro de chèque), une formule matricielle :

Code:
=STXT(G2;EQUIV(VRAI;ESTNUM(STXT(SUBSTITUE(G2;" ";"&");LIGNE(INDIRECT("1:"&
NBCAR(G2)));4)*1);0);4)

Principe : repérer la chaine de 4 caractères qui soit numérique

Matricielle donc CTRL + MAJ + ENTREE

@+
 

Tibo

XLDnaute Barbatruc
Re : Extraire le numéro de chèque en Formule et en VBA

re,

Bravo efgé,

Je n'avais pas pris garde au fait que le n° devait commencer par 1.

Reste à voir si le chiffre 1 ne pourrait pas être présent de façon isolée.

@+
 

Efgé

XLDnaute Barbatruc
Re : Extraire le numéro de chèque en Formule et en VBA

Re
Une version par macro (le prmier chiffre 1 rencontré doit être le début du N° de chèque) :
Code:
Sub Cheques()
For i = 2 To Range("G" & Application.Rows.Count).End(xlUp).Row
 Cells(i, 9) = Mid(Cells(i, 7), InStr(1, Cells(i, 7), "1"), 4)
Next i
End Sub
Cordialement
 

bqtr

XLDnaute Accro
Re : Extraire le numéro de chèque en Formule et en VBA

Bonjour à tous,

Un exemple par macro :
Code:
Sub Nro_Ch()
 
Dim cel As Range
 For Each cel In Range("G2:G" & Range("G65536").End(xlUp).Row)
   If InStr(1, cel, "1") > 0 And cel Like "*1###*"  Then Range("I" & cel.Row) = Mid(cel, InStr(1, cel, "1"), 4)
 Next
 
End Sub
La macro recherche le "1" puis si il y a 3 chiffres derrière, si OK elle extrait le n° dans la colonne I.

A+
 
Dernière édition:

MJ13

XLDnaute Barbatruc
Re : Extraire le numéro de chèque en Formule et en VBA

Bonjour Tibo, Efgé, Bqtr

Merci beaucoup.

Je teste ce soir et je vous tiens au courant.

Je n'avais pas pris garde au fait que le n° devait commencer par 1.

Sinon Tibo, je pense que le plus important c'est les 4 chiffres (j'espère que c'est facile d'adaptation si j'en ai que 3). Mais cela semble jouable.

Bon après -midi:).
 

pierrejean

XLDnaute Barbatruc
Re : Extraire le numéro de chèque en Formule et en VBA

Bonjour MJ13 ,Tibo , Efgé ,bqtr

Une version Vba qui tolere un ou d'autres 1 dans le texte
Et pour m'amuser une formule qui joue la prudence et n'affiche rien dans ce cas

Plus la version Vba en fonction personnalisée

Mais comme toujours avec moi à tester et re_tester
 

Pièces jointes

  • Extraire_Numéro_Cheque_MJ.zip
    13.2 KB · Affichages: 94
Dernière édition:

MJ13

XLDnaute Barbatruc
Re : Extraire le numéro de chèque en Formule et en VBA

Re à tous, Bonjour Pierre-Jean​

Merci aussi à Pierre-Jean pour ta contribution :).​

Voila le fichier avec vos soluces dans le post #11.​

On a plus que l'embarras du choix :p.​

Bonne soirée à tous :).​
 
Dernière édition:

david84

XLDnaute Barbatruc
Re : Extraire le numéro de chèque en Formule et en VBA

Bonsoir tout le monde
ci-joint une proposition formule permettant d'extraire les n° sans restriction du nombre de chiffres (à partir du moment où ils se suivent, ce qui semble être le cas dans l'exemple donné).
Cordialement
 

Pièces jointes

  • Extraire_Numéro_Cheque_MJ.xls
    21.5 KB · Affichages: 150
  • Extraire_Numéro_Cheque_MJ.xls
    21.5 KB · Affichages: 171
  • Extraire_Numéro_Cheque_MJ.xls
    21.5 KB · Affichages: 163

MJ13

XLDnaute Barbatruc
Re : Extraire le numéro de chèque en Formule et en VBA

Bonjour David (84), à tous

Merci David pour cette belle formule.

Je met à jour le fichier ici.

Bon Week-end à tous :).
 

Pièces jointes

  • Extraire_Numéro_Cheque_Solutions_Tibo_Efge_Bqtr_Pierrejean_David84.zip
    16.6 KB · Affichages: 77

pierrejean

XLDnaute Barbatruc
Re : Extraire le numéro de chèque en Formule et en VBA

Re

Histoire de titiller un peu les formulistes (que j'admire infiniment car je suis assez inapte dans cet exercice)
Le fichier de MJ13 avec 2 petits pièges
 

Pièces jointes

  • Extraire_Numéro_Cheque_Solutions_Tibo_Efge_Bqtr_Pierrejean_David84_b.zip
    17.5 KB · Affichages: 68
  • Extraire_Numéro_Cheque_Solutions_Tibo_Efge_Bqtr_Pierrejean_David84_b.zip
    17.5 KB · Affichages: 67
  • Extraire_Numéro_Cheque_Solutions_Tibo_Efge_Bqtr_Pierrejean_David84_b.zip
    17.5 KB · Affichages: 65

Tibo

XLDnaute Barbatruc
Re : Extraire le numéro de chèque en Formule et en VBA

Salut mon cher Pierre,

Titiller dis-tu :D !

Je propose ceci :

Code:
=STXT(G2;EQUIV(VRAI;ESTNUM(STXT(SUBSTITUE(SUBSTITUE(G2;" ";"&");"(";"£");
LIGNE(INDIRECT("1:"&NBCAR(G2)));4)*1);0);4)
Matricielle, donc toujours CTRL + MAJ + ENTREE

J'ai simplement traité la 1ère parenthèse ouvrante en la substituant par un autre caractère.

@+
 

pierrejean

XLDnaute Barbatruc
Re : Extraire le numéro de chèque en Formule et en VBA

Re

Mon Cher Tibo

Réaction fulgurante ( Il y en a qu'il ne faut pas gratter ou ça ne les demangent pas)
Fichier mis a jour donc !!
 

Pièces jointes

  • Extraire_Numéro_Cheque_Solutions_Tibo_Efge_Bqtr_Pierrejean_David84_b.zip
    16.6 KB · Affichages: 78
  • Extraire_Numéro_Cheque_Solutions_Tibo_Efge_Bqtr_Pierrejean_David84_b.zip
    16.6 KB · Affichages: 71
  • Extraire_Numéro_Cheque_Solutions_Tibo_Efge_Bqtr_Pierrejean_David84_b.zip
    16.6 KB · Affichages: 74

david84

XLDnaute Barbatruc
Re : Extraire le numéro de chèque en Formule et en VBA

Re,
alors je vois que pierrejean joue les poils à gratter !
Bien vu Tibo:) (non mais...)
Franchement pierrejean, si j'étais aussi "inapte" en VBA que tu l'es en formules, j'en serais très content !
Commençant à connaître les énergumènes qui circulent sur ce forum, j'avais pris le soin de préciser "permettant d'extraire les n° sans restriction du nombre de chiffres (à partir du moment où ils se suivent, ce qui semble être le cas dans l'exemple donné)" car je m'attendait à ce genre de contre-attaque aussi sympathique qu'intéressante.

Heureusement que Tibo veillait au grain;)
Au plaisir
 

Discussions similaires