OVH Cloud OVH Cloud

Extraction dernier mot

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

7 réponses

Avatar
Frédéric Sigonneau
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.


Avatar
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" a écrit 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.


Avatar
Titx
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.


.




Avatar
ChrisV
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" a écrit 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.


Avatar
Jacky
Oublie vite , c'est complètement erroné
Excuses
JJ

"Jacky" a écrit dans le 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" a écrit 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.






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

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

"Jacky" a écrit dans le
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" a écrit
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.






.





Avatar
Titx
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" a écrit
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.



.