Stringa.estrai

samuele agnolin
  • 25 febbraio 2017
  • livello: intermedio   3 minuti

La funzione di testo STRINGA.ESTRAI di Excel consente di estrarre una parte del contenuto di una cella testuale, specificando la posizione del carattere da cui partire e il numero di caratteri da estrarre.

Vuoi sapere come funzione lo stringa estrai? Ecco alcuni esempi pratici.




ESEMPIO PRATICO N°1:

partiamo da un codice fiscale ed estraiamo i due caratteri che identificano l’anno di nascita

Dobbiamo quindi usare excel per estrarre un numero da una stringa.

Nella cella A2 abbiamo il codice fiscale GNLMSM83R10L410Q
I caratteri da estrarre sono 2 a partire dalla posizione 7: vogliamo estrarre l’anno 83

Dal pulsante inserisci funzione accediamo all’elenco delle funzioni e ci posizioniamo sulle funzioni di Testo.

inserisci funzione testuale stringa estrai

Scegliamo STRINGA.ESTRAI e compiliamo i tre parametri obbligatori.

parametri stringa estrai

Questa è la funzione: =STRINGA.ESTRAI(A2;7;2). Che chiaramente può essere ottenuto anche scrivendo direttamente nella cella senza passare per le finestre di inserimento funzione sopra mostrate.

La sintassi è =STRINGA.ESTRAI(cella;posizione_di_inizio;numero_caratteri_da_estrarre)

sintassi stringa estrai

Visto che vogliamo estrarre il numero possiamo poi convertire in numero le due cifre trovate possiamo anteporre – -, come illustrato nel tutorial su come convertire un testo in numero:

=- -(STRINGA.ESTRAI(A2;7;2))

 

ESEMPIO PRATICO N°°2:

come fare quando il numero di caratteri da estrarre è variabile?

Prendo spunto da una richiesta di Luigi Enrico, un lettore del blog.

Abbiamo il seguente elenco, a partire dalla cella A2:
123/567
1T/45
12X4/A78

Come estarrre la parte alla sinistra della barra?

=STRINGA.ESTRAI(A2;1;?)

Funzione STRINGA.ESTRAI. Dobbiamo partire dal carattere 1. Ma quanti caratteri dobbiamo estrarre?

La chiave è identificare la posizione della barra e a questo sottrarre 1. Lo facciamo con la funzione RICERCA.

Scriviamo =RICERCA(“/”;A2). Il risultato è 4 nella prima cella, 3 nella seconda, 5 nella terza.

Ecco che ora possiamo scrivere:
=STRINGA.ESTRAI(A2;1;RICERCA(“/”;A2)-1)

Il -1 dopo la funzione RICERCA ci permette di fermarci un carattere prima della barra.

stringa estrai con numero di caratteri variabile




Abbiamo visto cosa fare quando il numero di caratteri da estrarre è variabile. Ma attenzione ad un dettaglio: la funzione RICERCA restituisce #VALORE! se non trova il testo da cercare, nel nostro caso la barra.

Se ci fosse scritto 123567 con =STRINGA.ESTRAI(A2;1;RICERCA(“/”;A2)-1) otterremmo #VALORE!
Noi invece in caso di assenza della barra vorremmo semplicemente restituire tutto il contenuto della cella.

Risolviamo utilizzando la funzione SE.ERRORE. Incontrata anche nel tutorial su come gestire l’errore #N/D! del cerca verticale.

Scriviamo =SE.ERRORE(STRINGA.ESTRAI(A2;1;RICERCA(“/”;A2)-1)).
In sostanza se lo STRINGA.ESTRAI restituisce un errore allora sostituisci l’errore con l’intero contenuto della cella stessa.



5 Comments

You can post comments in this post.


  • ho provato esattamente l’esempio e mi da un errore

    fabrizio 5 mesi ago Reply


    • Ciao Fabrizio. Se vuoi un aiuto riportami pure la formula che hai usato e il messaggio di errore che ti appare. Oppure, cosa più veloce per entrambi, mandami pure un estratto del file a samuele[at]amicoexcel.it

      Ciao!

      samuele 5 mesi ago Reply


      • anche a me da un errore profando a fare il tuo stesso esempio…mi dice “sono stati immessi insufficienti argomenti per questa funzione”

        ANNA ORLANDI 2 mesi ago Reply


    • Ciao Fabrizio..,penso che ormai avrai risolto,
      La formula è mancante di una parte: =SE.ERRORE(STRINGA.ESTRAI(A2;1;RICERCA(“/”;A2)-1);A2)

      ciao

      luca partenio 1 mese ago Reply


  • ciao come posso dire nella formula che mi deve estrarre un numero ?

    SANDRA LUSSO 2 mesi ago Reply


Inserisci un commento