Excel

Fjern sidste ord

Remove Last Word

Excel -formel: Fjern det sidste ordGenerisk formel | _+_ | Resumé

For at fjerne det sidste ord fra en tekststreng kan du bruge en formel baseret på MID funktion , med hjælp fra ERSTATNING , LEN , og FIND . I det viste eksempel er formlen i celle B5:





= MID (A1,1, FIND ('~', SUBSTITUTE (A1,' ','~', LEN (A1)- LEN ( SUBSTITUTE (A1,' ',''))))-1)
Forklaring

Denne formel bruger MID -funktionen til at fjerne det sidste ord fra en tekststreng. Hovedudfordringen er at finde ud af, hvor det sidste ord begynder.

Formlen er lidt indviklet, men trinene er enkle. Vi tæller først, hvor mange mellemrum der er i teksten ved hjælp af LEN og SUBSTITUTE. Dernæst bruger vi det noget uklare 'forekomst' -argument i SUBSTITUTE -funktionen til at erstatte sidst plads med en tilde (~). Endelig bruger vi FIND til at finde ud af, hvor tilden er, og MID -funktionen til at kassere alt efter tilden.

Når vi arbejder indefra og ud, bruger vi funktionerne LEN og SUBSTITUTE til at tælle, hvor mange mellemrum der vises i det næste:

 
= MID (B5,1, FIND ('~', SUBSTITUTE (B5,' ','~', LEN (B5)- LEN ( SUBSTITUTE (B5,' ',''))))-1)

For teksten i B5 returnerer dette 6. Denne side forklarer denne del af formlen mere detaljeret. Dette fortæller os, at vi vil skære teksten ved det 6. mellemrumstegn.

Bemærk: Hvis ord adskilles med mere end ét mellemrum, vil du først normalisere mellemrum med TRIM funktion .

Tallet 6 sættes derefter i en anden UDSKIFTNING som 'forekomstnummer':

 
 LEN (B5)- LEN ( SUBSTITUTE (B5,' ','')) // returns 6

Her erstatter vi den sjette forekomst af et mellemrum ('') med en tilde (~). Efter SUBSTITUTE kører, returnerer den denne streng:

 
 SUBSTITUTE (B5,' ','~',6) // insert tilde

Bemærk: Vi bruger kun en tilde (~), fordi det er en sjældent forekommende karakter. Du kan bruge et hvilket som helst tegn, du kan lide, så længe det ikke vises i kildeteksten.

Dernæst bruger vi FIND -funktionen til at lokalisere tilde:

 
'It's been seven hours and fifteen~days'

FIND returnerer 34, da tilden er det 34. tegn. Vi trækker 1 fra dette tal, fordi vi ikke ønsker at inkludere det sidste mellemrum i det endelige resultat. Vi kan nu forenkle formlen til:

 
 FIND ('~','It's been seven hours and fifteen~days')-1

MID-funktionen returnerer derefter tegn 1-33:

 
= MID (B5,1,33) // extract final text

Med en brugerdefineret afgrænser

Den samme formel kan bruges med en anden afgrænser. For at fjerne al tekst efter den sidste skråstreg '/' kan du f.eks. Bruge:

hvordan man beregner det samlede antal på excel
 
'It's been seven hours and fifteen'

Fjern de sidste n ord

Du kan tilpasse formlen til at fjerne de sidste 2 ord, de sidste 3 ord osv. Den generelle form er:

 
= MID (A1,1, FIND ('~', SUBSTITUTE (A1,'/','~', LEN (A1)- LEN ( SUBSTITUTE (A1,'/',''))))-1)

hvor d er afgrænseren, og n er antallet af ord, der skal fjernes.

Forfatter Dave Bruns


^