Excel: Rechercher une lettre

Fermé
maited - 26 sept. 2012 à 04:28
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 26 sept. 2012 à 09:01
Bonjour,

Savez vous comment rechercher si dans une chaine de caractère il y a une lettre ? et que la réponse me renvoit cette lettre et en bonus, sa place dans la chaine de caractère

exemple: ma chaine: 123A4567; résultats que j'aimerai connaitre: A et 4.
mais ma chaine peut etre aussi bien sur: 12B34567;

Merci d'avance pour votre aide.
Maïté


2 réponses

landrin Messages postés 10 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 26 septembre 2012 4
26 sept. 2012 à 08:49
Bonjour,

Si votre information est en A1 essayez de taper cette formule.

=SI(ESTNUM(CHERCHE("a";A1))=VRAI;"A"&CHERCHE("a";A1);"")

Cordialement
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié par michel_m le 26/09/2012 à 09:02
Bonjour,

pour trouver une lettre quelconque (majuscule ou minuscule) dans ta cellule, cela doit être possible par une formule "usine à gaz" mais tu peux employer une fonction personnalisée que voici:

Function extrait_lettres(ByRef texto As String) As String 
Dim reg As Object 
Dim extraction As Object 
    Set reg = CreateObject("vbscript.regexp") 
    reg.Global = True 
    reg.Pattern = "(\D)" 
    Set extraction = reg.Execute(texto) 
    For Each digit In extraction 
        extrait_lettres = extrait_lettres & (digit.Value) 
    Next digit 
    Set extraction = Nothing 
    Set reg = Nothing 
End Function



la cellule de départ est A1
le résultat est en A2 pour trouver sa position =extrait_lettres(A1)
sa position est
=cherche(A2;A1)



Michel
0