Hej. Du kan skapa en funktion i en VBA modul, t ex Jag är grymt tacksam. Det funkade klockrent. Det kan dock bli fel om någon har dubbelefternamn med mellanslag emellan.Få ut sista ordet ur en cell.
Sitter med ett problem där jag har ett excelarlk med en kolumn som innehåller både för- och efternamn.
Tänkte först att funktionen "text till kolumner" skulle fungera men det blir fel när det finns flera förnamn i cellen.
Jag har googlat runt på många sidor men får fortfarande inte nåt att fungera som jag vill. Hur ska jag skriva min formel för att hitta det som finns efter sista mellanslaget?
/DanneSv: Få ut sista ordet ur en cell.
Public Static Function TextAfterLastSpace(text As String) As String
Static lastSpacePos As Integer
lastSpacePos = InStrRev(text, " ", -1, vbTextCompare)
TextAfterLastSpace = Mid$(text, lastSpacePos + 1)
End Function
Public Static Function TextBeforeLastSpace(text As String) As String
Static lastSpacePos As Integer
lastSpacePos = InStrRev(text, " ", -1, vbTextCompare)
TextBeforeLastSpace = Left$(text, lastSpacePos)
End Function
I ditt excelark kan du sedan anropa funktionen i valfri cell.
T ex för att få texten efter sista mellanslaget:
=TextAfterLastSpace(A1), om din tect finns i Cell A1.
Sv:Få ut sista ordet ur en cell.
Tumme upp för såna som dig.
Tack.Sv: Få ut sista ordet ur en cell.