L'ultima parolla

Un prublema simplice, à u primu sguardu, cù una suluzione micca ovvia: estrae l'ultima parola da una linea di testu. Ebbè, o, in u casu generale, l'ultimu frammentu, siparatu da un caratteru delimitatore datu (spaziu, virgola, etc.) In altre parolle, hè necessariu di implementà una ricerca inversa (da a fine à u principiu) in a stringa di un un caratteru datu è poi estrae tutti i caratteri à a diritta di questu.

Fighjemu i tradiziunali parechji modi di sceglie: formule, macros, è attraversu Power Query.

Metudu 1. Formule

Per fà più faciule per capiscenu l'essenza è a meccanica di a formula, cuminciamu un pocu da luntanu. Prima, aumentemu u numeru di spazii trà e parolle in u nostru testu fonte à, per esempiu, 20 pezzi. Pudete fà questu cù a funzione di rimpiazzà. SUSTITUTU (SUBSTITUT) è a funzione di ripetiri un caratteru datu N volte - REPETE (REPT):

L'ultima parolla

Avà tagliate 20 caratteri da a fine di u testu risultatu usendu a funzione DIRITTA (DIRITTA):

L'ultima parolla

Si face più caldu, nò ? Resta per sguassà spazii extra cù a funzione TRIM (TRIM) è u prublema serà risolta:

L'ultima parolla

In a versione inglese, a nostra formula sarà cusì:

=TRIM(RIGHT(SUBSTITUTE(A1;» «;REPT(» «;20));20))

Spergu chì hè chjaru chì in principiu ùn hè micca necessariu inserisce esattamente 20 spazii - ogni numeru farà, sempre chì hè più di a durata di a parolla più longa in u testu fonte.

È se u testu fonte deve esse divisu micca da un spaziu, ma da un altru caratteru di separatore (per esempiu, da una virgola), allora a nostra formula deve esse ligeramente corretta:

L'ultima parolla

Metudu 2. Funzione Macro

U compitu di estrazione di l'ultima parola o fragmentu da u testu pò ancu esse risolta cù macros, vale à dì, scrive una funzione di ricerca inversa in Visual Basic chì farà ciò chì avemu bisognu - cercate una substringa determinata in una stringa in a direzzione opposta - da a fine à u principiu.

Pulsà a scurciatoia di u teclatu Alt+F11 o buttone franese tecnicu Insignia documentaliste (Sviluppatore)per apre l'editore macro. Allora aghjunghje un novu modulu via u menu Inserisce - Modulu è copià quì u codice seguente:

 Funzione LastWord (txt As String, Optional delim As String = " ", Optional n As Integer = 1) As String arFragments = Split (txt, delim) LastWord = arFragments (UBound (arFragments) - n + 1) End Function  

Avà pudete salvà u libru di travagliu (in un furmatu macro-attivatu!) È aduprà a funzione creata in a sintassi seguente:

=LastWord(txt; delim; n)

induva

  • txt - cellula cù u testu fonte
  • delim - carattere separatore (predeterminatu - spaziu)
  • n - chì parolla deve esse estratta da a fine (per default - a prima da a fine)

L'ultima parolla

Cù qualsiasi cambiamenti in u testu fonte in u futuru, a nostra funzione macro serà ricalculata nantu à a mosca, cum'è qualsiasi funzione standard di fogliu Excel.

Metudu 3. Power Query

dumanda di putenza hè un add-on gratuitu da Microsoft per impurtà dati in Excel da quasi ogni fonte è poi trasfurmà i dati scaricati in ogni forma. U putere è a freschezza di questu add-in hè cusì grande chì Microsoft hà custruitu tutte e so funzioni in Excel 2016 per automaticamente. Per Excel 2010-2013 Power Query pò esse scaricatu gratuitamente da quì.

U nostru compitu di separà l'ultima parola o fragmentu attraversu un separatore determinatu utilizendu Power Query hè risolta assai facilmente.

Prima, trasfurmemu a nostra tabella di dati in una tavola intelligente utilizendu i scurciati di tastiera. Ctrl+T o cumandamenti Home - Formate cum'è una tavola (Casa - Formate cum'è Table):

L'ultima parolla

Allora carchemu a "tavola intelligente" creata in Power Query usendu u cumandimu Da tavola / gamma (Da tavula / gamma) Insignia Dati (se avete Excel 2016) o nantu à a tabulazione dumanda di putenza (se avete Excel 2010-2013):

L'ultima parolla

In a finestra di l'editore di quistione chì si apre, nantu à a tabulazione Mutazioni (trasformazione) sceglie una squadra Split Colonna - By Delimiter (Colonna divisa - Per delimitatore) è poi resta à stabilisce u caratteru di separatore è selezziunate l'opzione Delimitatore più à destraper taglià micca tutte e parolle, ma solu l'ultima:

L'ultima parolla

Dopu avè cliccatu OK l'ultima parola serà separata in una nova colonna. A prima colonna innecessaria pò esse sguassata clicchendu u dirittu right in u so intestazione è selezziunate Eliminar (Eliminate). Pudete ancu rinominà a colonna restante in l'intestazione di a tavola.

I risultati ponu esse caricati torna à u fogliu cù u cumandamentu Casa - Chiudi è Carica - Chiudi è Carica à... (Casa - Chiudi è Carica - Chiudi è Carica à...):

L'ultima parolla

È in u risultatu avemu:

L'ultima parolla

Cusì - economicu è allegru, senza formule è macros, quasi senza toccu u teclatu 🙂

Se a lista originale cambia in u futuru, basterà à cliccà cù u dirittu right o aduprà una scurciatoia di tastiera Ctrl+Alt+F5 aghjurnà a nostra dumanda.


  • Dividendu u testu appiccicosu in colonne
  • Parsing and parsing text with regular expressions
  • Estrazione di e prime parolle da u testu cù a funzione SOSTITUTI

Lascia un Audiolibro