Fonction Droite

Christophe -  
 foo -
Bonjour,

J'ai les chaines de caractères suivantes :
/location_voiture_sport_C143
/location_voiture_tourisme_familial_BM1430
/vente_camping_car_tourisme_EU1

Je souhaite extraire que la référence qui se situe après le dernier _
C143
BM1430
EU1

J'ai tenté plusieurs choses sans succès

Si vous aviez une piste à me communiquer...

Merci
Christophe

3 réponses

  1. Gyrus Messages postés 3360 Statut Membre 526
     
    Bonjour,

    Tu peux utiliser cette fonction personnelle
    Function TrouveRef(Cel As Range) As String
    Dim Tablo
    Tablo = Split(Cel, "_")
    TrouveRef = Tablo(UBound(Tablo))
    End Function

    A+
    0
  2. tontong Messages postés 2575 Date d'inscription   Statut Membre Dernière intervention   1 064
     
    Bonjour,
    Sans macro:
    On cherche le nombre d'underscores _
    =NBCAR(A1)-NBCAR(SUBSTITUE(A1;"_";""))

    On remplace le dernier par le caractère §
    =SUBSTITUE(A1;"_";"§";NBCAR(A1)-NBCAR(SUBSTITUE(A1;"_";"")))

    Avec Stxt on récupère les 99 caractères qui suivent § (localisé avec Cherche)
    =STXT(A1;CHERCHE("§";SUBSTITUE(A1;"_";"§";NBCAR(A1)-NBCAR(SUBSTITUE(A1;"_";""))))+1;99)
    0
  3. foo
     
    Bonjour

    avec une macro

    Sub TestSplit1()
    Dim Ref
    For L = 2 To Range("A" & Rows.Count).End(xlUp).Row
    Ref = Split(Cells(L, 1), "_")
    Cells(L, 2).Value = Ref(UBound(Ref))
    Next
    End Sub

    A+
    Maurice
    0