Extraction dernier mot

Le
Titx
Bonjour,
J'ai besoin d'extraire le dernier mot de 4000 cellules
Excel, qu'elqu'un saurait comment faire cela?
Merci d'avance.

  • Partager ce contenu :
Vos réponses
Trier par : date / pertinence
Frédéric Sigonneau
Le #355686
Bonjour,

Tu pourrais, dans une colonne libre du classeur, utiliser (après l'avoir
recopiée dans un module standard de ton classeur) cette fonction personnalisée
qui, grossièrement, encapsule la fonction Split de VBA pour renvoyer soit un
tableau soit un élément de ce tableau (ici, en utilisant 4000 pour le dernier
paramètre tu obtiendras le dernier élément du tableau, cad le dernier mot de ta
phrase) :

Function xlSPLIT(Arr, Optional Delim = " ", Optional Elt)
Dim cell As Range
If IsMissing(Elt) Then
xlSPLIT = Split(Arr, Delim)
On Error Resume Next
Set cell = Application.Caller
On Error GoTo 0
If cell Is Nothing Then Exit Function
If Application.Caller.Rows.Count > 1 Then _
xlSPLIT = Application.Transpose(xlSPLIT)
Else
If Elt < 0 Then
Elt = 0
ElseIf Elt = 4000 Or Elt > UBound(Split(Arr, Delim)) Then
Elt = UBound(Split(Arr, Delim))
End If
xlSPLIT = Split(Arr, Delim)(Elt)
End If
End Function

Ensuite, si tes cellules sont en colonne A, saisis en B1 (par exemple)
=xlSplit(A1;;4000)
et recopie vers le bas.

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !


Bonjour,
J'ai besoin d'extraire le dernier mot de 4000 cellules
Excel, qu'elqu'un saurait comment faire cela?
Merci d'avance.


Jacky
Le #355684
Bonsoir Titx

Une soluce simple si tu peux insérer une colonne(démarrage en A1)

=DROITE(A1;CHERCHE(" ";A1)-1)

et tirer vers le bas

salutations
JJ


"Titx" 12ef901c3f706$9fc7ed10$
Bonjour,
J'ai besoin d'extraire le dernier mot de 4000 cellules
Excel, qu'elqu'un saurait comment faire cela?
Merci d'avance.


Titx
Le #355680
OK ça fonctionne
Merci beaucoup!!!

-----Message d'origine-----
Bonjour,

Tu pourrais, dans une colonne libre du classeur,
utiliser (après l'avoir

recopiée dans un module standard de ton classeur) cette
fonction personnalisée

qui, grossièrement, encapsule la fonction Split de VBA
pour renvoyer soit un

tableau soit un élément de ce tableau (ici, en utilisant
4000 pour le dernier

paramètre tu obtiendras le dernier élément du tableau,
cad le dernier mot de ta

phrase) :

Function xlSPLIT(Arr, Optional Delim = " ", Optional Elt)
Dim cell As Range
If IsMissing(Elt) Then
xlSPLIT = Split(Arr, Delim)
On Error Resume Next
Set cell = Application.Caller
On Error GoTo 0
If cell Is Nothing Then Exit Function
If Application.Caller.Rows.Count > 1 Then _
xlSPLIT = Application.Transpose(xlSPLIT)
Else
If Elt < 0 Then
Elt = 0
ElseIf Elt = 4000 Or Elt > UBound(Split(Arr, Delim))
Then

Elt = UBound(Split(Arr, Delim))
End If
xlSPLIT = Split(Arr, Delim)(Elt)
End If
End Function

Ensuite, si tes cellules sont en colonne A, saisis en B1
(par exemple)

=xlSplit(A1;;4000)
et recopie vers le bas.

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !


Bonjour,
J'ai besoin d'extraire le dernier mot de 4000 cellules
Excel, qu'elqu'un saurait comment faire cela?
Merci d'avance.


.




ChrisV
Le #355679
Bonjour Titx,

En supposant que le séparateur soit l'espace...

=SI(NB.SI(A1;"* *")>0;DROITE(A1;NBCAR(A1)-TROUVE("~";
SUBSTITUE(A1;" ";"~";NBCAR(A1)-NBCAR(SUBSTITUE(A1
;" ";"")))));A1)


ChrisV


"Titx" news: 12ef901c3f706$9fc7ed10$
Bonjour,
J'ai besoin d'extraire le dernier mot de 4000 cellules
Excel, qu'elqu'un saurait comment faire cela?
Merci d'avance.


Jacky
Le #355665
Oublie vite , c'est complètement erroné
Excuses
JJ

"Jacky" #
Bonsoir Titx

Une soluce simple si tu peux insérer une colonne(démarrage en A1)

=DROITE(A1;CHERCHE(" ";A1)-1)

et tirer vers le bas

salutations
JJ


"Titx" 12ef901c3f706$9fc7ed10$
Bonjour,
J'ai besoin d'extraire le dernier mot de 4000 cellules
Excel, qu'elqu'un saurait comment faire cela?
Merci d'avance.






Titx
Le #355895
je m'en était rendu compte...
merci quand même ;-))

-----Message d'origine-----
Oublie vite , c'est complètement erroné
Excuses
JJ

"Jacky" message news:

#
Bonsoir Titx

Une soluce simple si tu peux insérer une colonne
(démarrage en A1)



=DROITE(A1;CHERCHE(" ";A1)-1)

et tirer vers le bas

salutations
JJ


"Titx" dans le message news:


12ef901c3f706$9fc7ed10$
Bonjour,
J'ai besoin d'extraire le dernier mot de 4000
cellules



Excel, qu'elqu'un saurait comment faire cela?
Merci d'avance.






.





Titx
Le #355874
Merci beaucoup pour ta réponse!!!
C'est tout bête mais ils fallait y penser. ce que je n'ai
pas fait :o)

Titx

-----Message d'origine-----
Bonjour Titx,

En supposant que le séparateur soit l'espace...

=SI(NB.SI(A1;"* *")>0;DROITE(A1;NBCAR(A1)-TROUVE("~";
SUBSTITUE(A1;" ";"~";NBCAR(A1)-NBCAR(SUBSTITUE(A1
;" ";"")))));A1)


ChrisV


"Titx" dans le message de

news: 12ef901c3f706$9fc7ed10$
Bonjour,
J'ai besoin d'extraire le dernier mot de 4000 cellules
Excel, qu'elqu'un saurait comment faire cela?
Merci d'avance.



.




Poster une réponse
Anonyme