Funzione DIRITTO di Excel con esempi di formula

  • Condividi Questo
Michael Brown

Negli ultimi articoli abbiamo parlato di diverse funzioni di testo, utilizzate per manipolare le stringhe di testo. Oggi ci concentriamo sulla funzione DIRITTO, progettata per restituire un numero specifico di caratteri dal lato più destro di una stringa. Come le altre funzioni di testo di Excel, DIRITTO è molto semplice e diretta, tuttavia ha alcuni usi non ovvi che possono rivelarsi utili inil vostro lavoro.

    Sintassi della funzione DESTRA di Excel

    La funzione DESTRA di Excel restituisce il numero di caratteri specificato dalla fine di una stringa di testo.

    La sintassi della funzione RIGHT è la seguente:

    RIGHT(testo, [num_caratteri])

    Dove:

    • Testo (obbligatorio) - la stringa di testo da cui si desidera estrarre i caratteri.
    • Num_caratteri (opzionale) - il numero di caratteri da estrarre, a partire dal carattere più a destra.
      • Se num_caratteri è omesso, viene restituito l'ultimo carattere della stringa (valore predefinito).
      • Se num_caratteri è maggiore del numero totale di caratteri della stringa, vengono restituiti tutti i caratteri.
      • Se num_caratteri è un numero negativo, una formula giusta restituisce l'errore #VALORE!

    Ad esempio, per estrarre gli ultimi 3 caratteri dalla stringa nella cella A2, utilizzare questa formula:

    =DESTRA(A2, 3)

    Il risultato potrebbe essere simile a questo:

    Nota importante: la funzione DIRITTO di Excel restituisce sempre un valore stringa di testo Per forzare una formula di destra a produrre un numero, utilizzatela in combinazione con la funzione VALORE, come mostrato in questo esempio.

    Come utilizzare la funzione DIRITTO in Excel - esempi di formule

    Nei fogli di lavoro reali, la funzione DIRITTO di Excel viene usata raramente da sola, mentre nella maggior parte dei casi viene utilizzata insieme ad altre funzioni di Excel come parte di formule più complesse.

    Come ottenere una sottostringa che viene dopo un determinato carattere

    Se si desidera estrarre una sottostringa che segue un carattere specifico, utilizzare la funzione SEARCH o FIND per determinare la posizione del carattere, sottrarre la posizione dalla lunghezza totale della stringa restituita dalla funzione LEN ed estrarre tanti caratteri dal lato destro della stringa originale.

    GIUSTO( stringa , LEN( stringa ) - RICERCA( carattere , stringa ))

    Supponiamo che la cella A2 contenga il nome e il cognome separati da uno spazio e che si voglia estrarre il cognome in un'altra cella. Basta prendere la formula generica di cui sopra e mettere A2 al posto di stringa e " " (spazio) in corrispondenza di carattere:

    =DESTRA(A2,LEN(A2)-RICERCA(" ", A2))

    La formula darà il seguente risultato:

    In modo analogo, è possibile ottenere una sottostringa che segue qualsiasi altro carattere, ad esempio una virgola, un punto e virgola, un trattino e così via:

    =DESTRA(A2,LEN(A2)-RICERCA("-",A2))

    Il risultato sarà simile a questo:

    Come estrarre una sottostringa dopo l'ultima occorrenza del delimitatore

    Quando si ha a che fare con stringhe complesse che contengono diverse occorrenze dello stesso delimitatore, spesso è necessario recuperare il testo a destra dell'ultima occorrenza del delimitatore. Per rendere le cose più comprensibili, date un'occhiata ai seguenti dati di partenza e al risultato desiderato:

    Come si può vedere nella schermata precedente, la colonna A contiene un elenco di errori. L'obiettivo è estrarre la descrizione dell'errore che viene dopo gli ultimi due punti in ogni stringa. Un'ulteriore complicazione è che le stringhe originali possono contenere un numero diverso di istanze del delimitatore, ad esempio A3 contiene 3 punti mentre A5 solo uno.

    La chiave per trovare una soluzione è determinare la posizione dell'ultimo delimitatore nella stringa di origine (l'ultima occorrenza dei due punti in questo esempio). Per farlo, è necessario utilizzare una serie di funzioni diverse:

    1. Ottiene il numero di delimitatori nella stringa originale. È una parte semplice:
      • Innanzitutto, si calcola la lunghezza totale della stringa utilizzando la funzione LEN: LEN(A2)
      • In secondo luogo, si calcola la lunghezza della stringa senza delimitatori utilizzando la funzione SUBSTITUTE che sostituisce tutte le occorrenze dei due punti con nulla: LEN(SUBSTITUTE(A2,":",""))
      • Infine, si sottrae la lunghezza della stringa originale senza delimitatori dalla lunghezza totale della stringa: LEN(A2)-LEN(SUBSTITUTE(A2,":",""))

      Per assicurarsi che la formula funzioni correttamente, è possibile inserirla in una cella separata e il risultato sarà 2, ovvero il numero di punti nella cella A2.

    2. Sostituire l'ultimo delimitatore con un carattere univoco. Per estrarre il testo che viene dopo l'ultimo delimitatore nella stringa, dobbiamo "marcare" in qualche modo l'ultima occorrenza del delimitatore. Per questo, sostituiamo l'ultima occorrenza dei due punti con un carattere che non appare da nessuna parte nelle stringhe originali, per esempio con il segno di cancelletto (#).

      Se conoscete la sintassi della funzione SOSTITUISCI di Excel, ricorderete che ha un quarto argomento opzionale (numero_istanza) che consente di sostituire solo una specifica occorrenza del carattere specificato. E poiché abbiamo già calcolato il numero di delimitatori nella stringa, è sufficiente fornire la funzione di cui sopra nel quarto argomento di un'altra funzione SOSTITUISCI:

      =SOSTITUIRE(A2,":", "#",LEN(A2)-LEN(SOSTITUTO(A2,":","")))

      Se si inserisce questa formula in una cella separata, essa restituirà questa stringa: ERROR:432#Connessione interrotta per tempo

    3. Ottenere la posizione dell'ultimo delimitatore nella stringa. A seconda del carattere con cui è stato sostituito l'ultimo delimitatore, si può usare SEARCH, sensibile alle maiuscole, o FIND, sensibile alle minuscole, per determinare la posizione di quel carattere nella stringa. Abbiamo sostituito l'ultimo due punti con il segno #, quindi usiamo la formula seguente per trovare la sua posizione:

      =RICERCA("#", SUBSTITUTE(A2,":", "#",LEN(A2)-LEN(SUBSTITUTE(A2,":",""))))

      In questo esempio, la formula restituisce 10, che è la posizione di # nella stringa sostituita.

    4. Restituisce una sottostringa a destra dell'ultimo delimitatore. Ora che si conosce la posizione dell'ultimo delimitatore in una stringa, è sufficiente sottrarre questo numero dalla lunghezza totale della stringa e far sì che la funzione RIGHT restituisca un numero di caratteri pari alla fine della stringa originale:

      =DESTRA(A2,LEN(A2)-RICERCA("$",SOSTITUTO(A2,":","$",LEN(A2)-LEN(SOSTITUTO(A2,":","")))))

    Come mostrato nella schermata seguente, la formula funziona perfettamente:

    Se si lavora con un set di dati di grandi dimensioni in cui le diverse celle possono contenere delimitatori diversi, si consiglia di racchiudere la formula precedente nella funzione IFERROR per evitare possibili errori:

    =IFERROR(RIGHT(A2,LEN(A2)-SEARCH("$",SUBSTITUTE(A2,":","$",LEN(A2)-LEN(SUBSTITUTE(A2,":",""))))), A2)

    Nel caso in cui una determinata stringa non contenga una singola occorrenza del delimitatore specificato, verrà restituita la stringa originale, come nella riga 6 della schermata seguente:

    Come rimuovere i primi N caratteri da una stringa

    Oltre a estrarre una sottostringa dalla fine di una stringa, la funzione DESTRA di Excel è utile quando si desidera rimuovere un certo numero di caratteri dall'inizio della stringa.

    Nel set di dati utilizzato nell'esempio precedente, si potrebbe voler rimuovere la parola "ERROR" che appare all'inizio di ogni stringa e lasciare solo il numero e la descrizione dell'errore. Per farlo, sottrarre il numero di caratteri da rimuovere dalla lunghezza totale della stringa e fornire questo numero al metodo num_caratteri della funzione Excel RIGHT:

    GIUSTO( stringa , LEN( stringa )- numero_di_caratteri_da_rimuovere )

    In questo esempio, rimuoviamo i primi 6 caratteri (5 lettere e i due punti) dalla stringa di testo in A2, quindi la formula è la seguente:

    =DESTRA(A2, LEN(A2)-6)

    La funzione DESTRA di Excel può restituire un numero?

    Come accennato all'inizio di questo tutorial, la funzione DIRITTO di Excel restituisce sempre una stringa di testo anche se il valore originale è un numero. Ma se si lavora con un insieme di dati numerici e si desidera che anche l'output sia numerico, è possibile trovare una facile soluzione annidando una formula DIRITTO nella funzione VALORE, che è stata appositamente progettata per convertire una stringa che rappresenta un numero in un numero.

    Ad esempio, per estrarre gli ultimi 5 caratteri (codice postale) dalla stringa in A2 e convertire i caratteri estratti in un numero, utilizzare questa formula:

    =VALORE(DESTRA(A2, 5))

    L'immagine sottostante mostra il risultato: si noti l'allineamento a destra dei numeri nella colonna B, rispetto alle stringhe di testo allineate a sinistra nella colonna A:

    Perché la funzione DIRITTO non funziona con le date?

    Poiché la funzione DESTRA di Excel è progettata per lavorare con stringhe di testo, mentre le date sono rappresentate da numeri nel sistema interno di Excel, una formula DESTRA non è in grado di recuperare una singola parte di una data, come il giorno, il mese o l'anno. Se si tenta di farlo, tutto ciò che si ottiene sono le ultime cifre del numero che rappresenta la data.

    Supponiamo di avere la data 18-Gen-2017 nella cella A1. Se si cerca di estrarre l'anno con la formula GIUSTO(A1,4), il risultato sarà 2753, ovvero le ultime 4 cifre del numero 42753 che rappresenta il 18 gennaio 2017 nel sistema Excel.

    "Allora, come faccio a recuperare una determinata parte di una data?", mi chiederete. Utilizzando una delle seguenti funzioni:

    • Funzione DAY per estrarre un giorno: =DAY(A1)
    • Funzione MESE per ottenere un mese: =MONTE(A1)
    • Funzione YEAR per estrarre un anno: =YEAR(A1)

    La seguente schermata mostra i risultati:

    Se il vostro Le date sono rappresentate da stringhe di testo Quando si esportano dati da un'origine esterna, nulla vieta di utilizzare la funzione DIRITTO per estrarre gli ultimi caratteri della stringa che rappresentano una determinata parte della data:

    La funzione DIRITTO di Excel non funziona - motivi e soluzioni

    Se una formula di destra non funziona correttamente nel vostro foglio di lavoro, molto probabilmente è dovuto a uno dei seguenti motivi:

    1. Esistono uno o più spazi a seguire Per rimuovere rapidamente gli spazi extra nelle celle, utilizzare la funzione TRIM di Excel o il componente aggiuntivo Cell Cleaner.
    2. Il num_caratteri l'argomento è meno di zero Naturalmente, non si vorrà mai inserire di proposito un numero negativo nella formula, ma se il valore di num_caratteri L'argomento viene calcolato da un'altra funzione di Excel o da una combinazione di funzioni diverse e la formula di destra restituisce l'errore #VALORE!
    3. Il valore originale è un data Se avete seguito attentamente questa guida, sapete già perché la funzione DESTRA non funziona con le date. Se avete saltato la sezione precedente, potete trovare tutti i dettagli in Perché la funzione DESTRA di Excel non funziona con le date.

    Ecco come si usa la funzione DESTRA in Excel. Per dare un'occhiata più da vicino alle formule discusse in questo tutorial, vi invitiamo a scaricare la nostra cartella di lavoro di esempio qui sotto. Vi ringrazio per la lettura e spero di vedervi sul nostro blog la prossima settimana.

    Download disponibili

    Funzione DIRITTO di Excel - esempi (file .xlsx)

    Michael Brown è un appassionato di tecnologia dedicato con una passione per la semplificazione di processi complessi utilizzando strumenti software. Con oltre un decennio di esperienza nel settore tecnologico, ha affinato le sue competenze in Microsoft Excel e Outlook, nonché in Fogli Google e Documenti. Il blog di Michael è dedicato alla condivisione delle sue conoscenze e competenze con gli altri, fornendo suggerimenti e tutorial facili da seguire per migliorare la produttività e l'efficienza. Che tu sia un professionista esperto o un principiante, il blog di Michael offre spunti preziosi e consigli pratici per ottenere il massimo da questi strumenti software essenziali.