Extraire les données d'une cellule

Fermé
steph - 28 mai 2008 à 11:09
m@rina Messages postés 21237 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 8 janvier 2025 - 28 mai 2008 à 12:32
Bonjour,


J'ai une colonne A dans la il ya par exemple :

lili,lala,lolo
de,do,da
de,da
,de

Dans une colonne B à coté je voudrais afficher uniquement le dernier mots ou groupement de mot avec la virgule soit :
lolo
da
da
de

je précise qu'il peut y avoir des ensemble de mots séparé par des espaces, exemple : Tour Eiffel

je suis très débutant sur VBA

Merci pour votre aide

2 réponses

Si tu parle d'excel:
Il y a un fonction qui localise les characteres specifiques (dans ton cas la virgule) dans une chaine de charactere (en XL en anglais c'est =search(...,...)).

Une deuxieme fonction determinera la longueur de la chaine (il faudra utiliser la fonction TRIM () pour enlever les blancs).

Une troisieme function prelevera tous ce qui se trouve a droite de la virgule.
Example:

si le text lili,lala,lolo est dans C5
Taper dans D5 =SEARCH(",",C5,1) donnera 5 (premiere virgule en position 5)
Taper dans E5 =RIGHT(C5,LEN(C5)-D5) prendre les 9 characteres a droite de la premiere virgule : lala,lolo

pour enlever la deuxieme virgule refaire la meme chose avec le resultat.

si tu m'envoie to Email je t'enverrai un feuille XL
1
m@rina Messages postés 21237 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 8 janvier 2025 11 377
28 mai 2008 à 12:32
Bonjour,

Voici une formule matricielle.
En supposant que ta chaîne de caractères se trouve en A1, voici la formule à mettre en B1 :

{=DROITE(A1;EQUIV(",";STXT(A1;NBCAR(A1)-LIGNE(INDIRECT("1:"& NBCAR(A1)));1);0))}

Les { } s'obtiennent en validant par Ctrl+Maj+Entrée

C'est une formule un peu alambiquée inspirée du site Excelabo.net

m@rina
0