Formula di Excel: taglia il testo in n parole -

Sommario

Formula generica

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

Sommario

Per tagliare il testo fino a un certo numero di parole, puoi utilizzare una formula basata sulle funzioni SOSTITUISCI, TROVA e SINISTRA. Nell'esempio mostrato, la formula in xxx è:

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

Spiegazione

Abbiamo bisogno di un modo per dividere il testo in corrispondenza di un certo marcatore che corrisponde a un certo numero di parole. Excel non dispone di una funzione incorporata per analizzare il testo per parola, quindi si utilizza l'argomento "istanza" della funzione SOSTITUISCI per sostituire un carattere "ennesimo spazio" con il segno di cancelletto (#), quindi si utilizza TROVA e SINISTRA per eliminare tutto testo dopo il marcatore.

Lavorando dall'interno verso l'esterno, SUBSTITUTE è configurato per sostituire l'ennesima occorrenza di un carattere spazio, dove n proviene dalla colonna C, il testo proviene dalla colonna B e "#" è hardcoded.

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

La stringa risultante viene restituita alla funzione TROVA, configurata per cercare "#".

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

Poiché "#" è il dodicesimo carattere nel testo, TROVA restituisce 12. Non vogliamo includere il carattere spazio stesso, quindi sottraiamo 1:

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

SINISTRA restituisce il risultato finale della formula "Il gatto seduto".

Nota: il carattere cancelletto ("#") è arbitrario e può essere sostituito con qualsiasi carattere che non apparirà nel testo.

Aggiungi elissi o altri personaggi

Per aggiungere "…" alla fine del testo tagliato, usa la concatenazione in questo modo:

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

Puoi sostituire "…" con qualsiasi cosa tu voglia.

Articoli interessanti...