Extraire dernier mot (nombre de caracteres aleatoires) d'une cellule

  • Initiateur de la discussion Initiateur de la discussion Delux
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Delux

XLDnaute Occasionnel
Bonjour a tous,

Desole pour les accents je bosse sur QWERTY.

Je souhaite extraire le dernier mot d'une cellule dont le nombre de caracteres est aleatoire.

Ex: la cellule Z2 contient : "C:\Documents and Settings\clt\Desktop\blabla\Monthly Meeting\Users
Je souhaite extraire en AA2 = "Users".

Cependant, Z2 est succeptible de changer, "C:\Documents and Settings\clt\Desktop\blabla\Monthly Meeting\Archives"

etc...

Auriez vous une solution pour ce probleme?

Merci d'avance.

Cordialement,

Delux
 
Re : Extraire dernier mot (nombre de caracteres aleatoires) d'une cellule

Bonjour,
Si tu travailles toujours dans le même répertoire, le nb de caractères à éliminer est fixe (61 dans ton exemple avec blabla).
Donc avec : =DROITE(Z2;NBCAR(Z2)-61)
Cordialement
 
Re : Extraire dernier mot (nombre de caracteres aleatoires) d'une cellule

Bonjour Delux, Dugenou, bonjour le forum

Une proposition VBA :
Code:
Sub Macro1()
'la fonction "Split" sépare les parties entre le délimiteur (ici "\") sous forme de tableau
'la fonction Ubound renvoie le nombre du dernier élément d'un tableau
Range("AA2").Value = Split(Range("Z2").Value, "\")(UBound(Split(Range("Z2").Value, "\")))
End Sub
 
Re : Extraire dernier mot (nombre de caracteres aleatoires) d'une cellule

Bonjour Delux, Dugenou, bonjour le forum

Une proposition VBA :
Code:
Sub Macro1()
'la fonction "Split" sépare les parties entre le délimiteur (ici "\") sous forme de tableau
'la fonction Ubound renvoie le nombre du dernier élément d'un tableau
Range("AA2").Value = Split(Range("Z2").Value, "\")(UBound(Split(Range("Z2").Value, "\")))
End Sub

Robert,

Juste par curiosite, si je veux le dernier mot et le precedent ("Monthly Meeting\Users"), comment modifier votre macro pour y parvenir?

Merci d'avance

Cordialement,

Delux
 
Re : Extraire dernier mot (nombre de caracteres aleatoires) d'une cellule

Bonsoir @ tous,
Salut Dugenou 🙂, Salut Robert 😱,

une solution par formule, si les données sont en Colonne A, en B2,

Formule Classique,
Code:
=DROITE(A2;NBCAR(A2)-TROUVE("*";SUBSTITUE(A2;"\";"*";NBCAR(A2)-NBCAR(SUBSTITUE(A2;"\";"")))))
@ valider par Simple Entree
@ tirer vers le bas

Formule Matricielle,
Code:
=DROITE(A2;EQUIV("\";STXT(A2;NBCAR(A2)-LIGNE(INDIRECT("1:"&NBCAR(A2)));1);0))
@ valider par Ctrl+Maj+Entree
@ tirer vers le bas

Voir PJ...

Amicalement
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour