Excel-formule: tekst bijsnijden tot n woorden -

Inhoudsopgave

Generieke formule

=LEFT(txt,FIND("#",SUBSTITUTE(txt," ","#",n))-1)

Samenvatting

Om tekst bij te snijden tot een bepaald aantal woorden, kunt u een formule gebruiken die is gebaseerd op de functies SUBSTITUTE, FIND en LEFT. In het getoonde voorbeeld is de formule in xxx:

=LEFT(B5,FIND("#",SUBSTITUTE(B5," ","#",C5))-1)

Uitleg

We hebben een manier nodig om tekst te splitsen op een bepaalde markering die overeenkomt met een bepaald aantal woorden. Excel heeft geen ingebouwde functie om tekst op woord te parseren, dus gebruik je het "instance" -argument van de SUBSTITUTE-functie om een ​​"n-de spatie" -teken te vervangen door het hekje (#), en gebruik je FIND en LEFT om alles te verwijderen tekst na de markering.

SUBSTITUTE werkt van binnen naar buiten en is geconfigureerd om het nde voorkomen van een spatie-teken te vervangen, waarbij n uit kolom C komt, de tekst uit kolom B komt en "#" hardgecodeerd is.

=SUBSTITUTE(B5," ","#",C5) =SUBSTITUTE("The cat sat on the mat."," ","#",3) ="The cat sat#on the mat."

De resulterende string wordt teruggestuurd naar de FIND-functie, geconfigureerd om te zoeken naar "#".

=FIND("#","The cat sat#on the mat.)

Omdat de "#" het 12e teken in de tekst is, geeft FIND 12 terug. We willen de spatie zelf niet opnemen, dus trekken we 1 af:

=LEFT(B5,12-1) =LEFT(B5,11)

LINKS geeft het eindresultaat van de formule "De kat zat" terug.

Opmerking: het hekje ("#") is willekeurig en kan worden vervangen door elk teken dat niet in de tekst voorkomt.

Voeg elipsen of een ander teken toe

Gebruik aaneenschakeling als volgt om "…" aan het einde van de bijgesneden tekst toe te voegen:

=LEFT(B5,FIND("#",SUBSTITUTE(B5," ","#",C5))-1)&"… "

U kunt "…" vervangen door wat u maar wilt.

Interessante artikelen...