Bonjour à Toi Ândré, au Forum, aux buveurs et buveuses de Duvel qui se réveillent lentement le Dimanche !! lol
Bon comme tu pourras t'en douter moi je ole fais en VBA !!
Option Explicit
Sub ExtractionDansStringSPLIT()
Dim TheString As String, TheLastMot As String
Dim contenu As Variant
TheString = "C'est aujourd'hui dimanche"
contenu = Split(TheString, Chr(32))
TheLastMot = contenu(UBound(contenu))
MsgBox "Le dernier mot est : " & TheLastMot
End Sub
Sub ExtractionDansString_SANS_SPLIT()
Dim TheString As String, TheLastMot As String
Dim Y As Byte, X As Integer
TheString = "Et demain ce sera lundi"
Y = Len(TheString)
For X = Y To 1 Step -1
If Mid(TheString, X, 1) <> Chr(32) Then
TheLastMot = Mid(TheString, X, 1) & TheLastMot
Else
Exit For
End If
Next X
MsgBox "Le dernier mot est : " & TheLastMot
End Sub
Mais comme je sais que tu devras l'utiliser en Fonction, voici les Mêmesen Fonction Personnalisées utilisable depuis une cellule =LASTWORD(A1)
Function LASTWORD(ByRef Cell As Range)
Dim TheString As String, TheLastMot As String
Dim contenu As Variant
Application.Volatile
TheString = Cell.Value
contenu = Split(TheString, Chr(32))
TheLastMot = contenu(UBound(contenu))
LASTWORD = TheLastMot
End Function
Function DERMOT(ByRef Cell As Range)
Dim TheString As String, TheLastMot As String
Dim Y As Byte, X As Integer
Application.Volatile
TheString = Cell.Value
Y = Len(TheString)
For X = Y To 1 Step -1
If Mid(TheString, X, 1) <> Chr(32) Then
TheLastMot = Mid(TheString, X, 1) & TheLastMot
Else
Exit For
End If
Next X
DERMOT = TheLastMot
End Function
La différence entre c'est quatres possibilités réside dans le Fait que seule la seconde et la quatrième sont compatible Excel 97 (SPLIT n'existant pas pour cette version)
Bon Dimanche
@+Thierry