Excel: Rimuovere il primo o l'ultimo carattere (da sinistra o da destra)

  • Condividi Questo
Michael Brown

Quando si lavora con dati di testo non strutturati nei fogli di lavoro, spesso è necessario analizzarli per recuperare le informazioni rilevanti. Questo articolo vi insegnerà alcuni semplici modi per rimuovere un numero qualsiasi di caratteri dal lato sinistro o destro di una stringa di testo.

    Come rimuovere i caratteri da sinistra in Excel

    La rimozione dei primi caratteri da una stringa è una delle operazioni più comuni in Excel e può essere eseguita con 3 formule diverse.

    Rimuovere il primo carattere in Excel

    Per eliminare il primo carattere da una stringa, si può utilizzare la funzione REPLACE o una combinazione delle funzioni RIGHT e LEN.

    SOSTITUIRE( stringa , 1, 1, "")

    In questo caso, prendiamo semplicemente 1 carattere dalla prima posizione e lo sostituiamo con una stringa vuota ("").

    GIUSTO( stringa , LEN( stringa ) - 1)

    In questa formula, si utilizza la funzione LEN per calcolare la lunghezza totale della stringa e si sottrae 1 carattere da essa. La differenza viene servita a DESTRA, quindi si estraggono tanti caratteri dalla fine della stringa.

    Ad esempio, per rimuovere il primo carattere dalla cella A2, le formule sono le seguenti:

    =SOSTITUIRE(A2, 1, 1, "")

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

    Rimuovere i caratteri da sinistra

    Per rimuovere i caratteri iniziali dal lato sinistro di una stringa, si utilizzano anche le funzioni REPLACE o RIGHT e LEN, specificando però quanti caratteri si desidera eliminare ogni volta:

    SOSTITUIRE( stringa , 1, num_caratteri , "")

    Oppure

    GIUSTO( stringa , LEN( stringa ) - num_caratteri )

    Ad esempio, per rimuovere primi 2 caratteri dalla stringa in A2, le formule sono:

    =SOSTITUIRE(A2, 1, 2, "")

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

    Per rimuovere prima 3 caratteri , le formule assumono questa forma:

    =SOSTITUIRE(A2, 1, 3, "")

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

    L'immagine seguente mostra la formula REPLACE in azione. Con RIGHT LEN, i risultati sarebbero esattamente gli stessi.

    Funzione personalizzata per eliminare i primi n caratteri

    Se non vi dispiace utilizzare VBA nei vostri fogli di lavoro, potete creare una funzione definita dall'utente per eliminare i caratteri dall'inizio di una stringa, denominata RimuoviPrimiCaratteri Il codice della funzione è molto semplice:

    Funzione RemoveFirstChars(str As String , num_chars As Long ) RemoveFirstChars = Right(str, Len(str) - num_chars) Fine Funzione

    Una volta inserito il codice nella cartella di lavoro (le istruzioni dettagliate sono qui), è possibile rimuovere i primi n caratteri da una determinata cella utilizzando questa formula compatta e intuitiva:

    RemoveFirstChars(stringa, num_chars)

    Ad esempio, per eliminare il file prima da una stringa in A2, la formula in B2 è:

    =RimuoviPrimiCaratteri(A2, 1)

    Per spogliarsi primi due da A3, la formula in B3 è:

    =RimuoviPrimiCaratteri(A4, 2)

    Per eliminare primi tre caratteri di A4, la formula in B4 è:

    =RimuoviPrimiCaratteri(A4, 3)

    Ulteriori informazioni su Utilizzo di funzioni personalizzate in Excel.

    Come rimuovere i caratteri dalla destra

    Per rimuovere i caratteri dal lato destro di una stringa, è possibile utilizzare le funzioni native o crearne una propria.

    Rimuovere l'ultimo carattere in Excel

    Per eliminare l'ultimo carattere di una cella, la formula generica è:

    SINISTRA( stringa , LEN( stringa ) - 1)

    In questa formula, si sottrae 1 dalla lunghezza totale della stringa e si passa la differenza alla funzione SINISTRA per estrarre tanti caratteri dall'inizio della stringa.

    Ad esempio, per togliere l'ultimo carattere dalla cella A2, la formula in B2 è:

    =SINISTRA(A2, LEN(A2) - 1)

    Rimuovere i caratteri da destra

    Per eliminare un determinato numero di caratteri dalla fine di una cella, la formula generica è:

    SINISTRA( stringa , LEN( stringa ) - num_caratteri )

    La logica è la stessa della formula precedente e di seguito sono riportati un paio di esempi.

    Per rimuovere il ultimi 3 caratteri , utilizzare 3 per num_caratteri :

    =SINISTRA(A2, LEN(A2) - 3)

    Per eliminare il ultimi 5 caratteri , fornitura 5 per num_caratteri :

    =SINISTRA(A2, LEN(A2) - 5)

    Funzione personalizzata per rimuovere gli ultimi n caratteri in Excel

    Se desiderate avere una funzione personalizzata per rimuovere un numero qualsiasi di caratteri da destra, aggiungete questo codice VBA alla vostra cartella di lavoro:

    Funzione RemoveLastChars(str As String , num_chars As Long ) RemoveLastChars = Left(str, Len(str) - num_chars) Fine Funzione

    La funzione si chiama RimuoviUltimoCarattere e la sua sintassi non ha bisogno di alcuna spiegazione:

    RemoveLastChars(stringa, num_chars)

    Per fare una prova sul campo, sbarazziamoci dell'opzione ultimo carattere in A2:

    =RimuoviIlCarattereUltimo(A2, 1)

    Inoltre, rimuoviamo l'elemento ultimi 2 caratteri dal lato destro della stringa in A3:

    =RimuoviIlCarattereUltimo(A3, 2)

    Per eliminare il ultimi 3 caratteri dalla cella A4, la formula è:

    =RimuoviIlCarattereUltimo(A4, 3)

    Come si può vedere nella schermata sottostante, la nostra funzione personalizzata funziona in modo eccellente!

    Come rimuovere i caratteri da destra e da sinistra contemporaneamente

    Quando è necessario cancellare i caratteri su entrambi i lati di una stringa, è possibile eseguire entrambe le formule di cui sopra in sequenza oppure ottimizzare il lavoro con l'aiuto della funzione MID.

    MID( stringa , sinistra _ Caratteri + 1, LEN( stringa ) - ( sinistra _ Caratteri + diritto _ Caratteri )

    Dove:

    • caratteri_sinistra - il numero di caratteri da eliminare da sinistra.
    • caratteri_destra - il numero di caratteri da eliminare da destra.

    Supponiamo di voler estrarre il nome utente da una stringa del tipo mailto:[email protected] Per questo, una parte del testo deve essere rimossa dall'inizio ( mailto: - 7 caratteri) e dalla fine ( @gmail.com - 11 caratteri).

    Servite i numeri di cui sopra alla formula:

    =METÀ(A2, 7+1, LEN(A2) - (7+10))

    ...e il risultato non vi farà attendere:

    Per capire cosa sta succedendo, ricordiamo la sintassi della funzione MID, che viene utilizzata per estrarre una sottostringa di una certa dimensione dal centro della stringa originale:

    MID(testo, start_num, num_chars)

    Il testo non solleva alcun dubbio: è la stringa di partenza (A2 nel nostro caso).

    Per ottenere la posizione del primo carattere da estrarre ( numero_inizio ), si aggiunge 1 al numero di caratteri da togliere da sinistra (7+1).

    Per determinare quanti caratteri restituire ( num_caratteri ), si calcola il totale dei caratteri rimossi (7 + 11) e si sottrae la somma dalla lunghezza dell'intera stringa: LEN(A2) - (7+10)).

    Ottenere il risultato come numero

    Qualunque sia la formula utilizzata, l'output è sempre un testo, anche se il valore restituito contiene solo numeri. Per restituire il valore risultato come numero , avvolgere la formula principale nella funzione VALORE o eseguire qualche operazione matematica che non influisca sul risultato, ad esempio moltiplicare per 1 o aggiungere 0. Questa tecnica è particolarmente utile quando si desidera calcolare ulteriormente i risultati.

    Supponiamo di aver rimosso il primo carattere dalle celle A2:A6 e di voler sommare i valori risultanti. Sorprendentemente, una banale formula SOMMA restituisce zero. Perché? Ovviamente perché si stanno sommando stringhe, non numeri. Eseguite una delle operazioni seguenti e il problema è risolto!

    =VALORE(REPLACE(A2, 1, 1, ""))

    =DESTRA(A2, LEN(A2) - 1) * 1

    =RimuoviPrimiCaratteri(A2, 1) + 0

    Rimuovere il primo o l'ultimo carattere con Flash Fill

    In Excel 2013 e versioni successive, c'è un altro modo semplice per eliminare il primo e l'ultimo carattere in Excel: la funzione Riempimento flash.

    1. In una cella adiacente alla prima cella con i dati originali, digitare il risultato desiderato omettendo il primo o l'ultimo carattere della stringa originale e premere Invio.
    2. Se Excel percepisce lo schema dei dati immessi, seguirà lo stesso schema nelle altre celle e visualizzerà un'anteprima dei dati senza il primo/ultimo carattere.
    3. Basta premere il tasto Invio per accettare l'anteprima.

    Rimuovere i caratteri per posizione con Ultimate Suite

    Tradizionalmente, gli utenti della nostra Ultimate Suite possono gestire il compito con pochi clic senza dover ricordare una manciata di formule diverse.

    Per eliminare i primi o gli ultimi n caratteri da una stringa, è necessario procedere in questo modo:

    1. Sul Dati Ablebits nella scheda Testo gruppo, fare clic su Rimuovere > Rimuovere per posizione .

  • Nel riquadro del componente aggiuntivo, selezionare l'intervallo di destinazione, specificare il numero di caratteri da eliminare e premere Rimuovere .
  • Ad esempio, per rimuovere il primo carattere, si configura la seguente opzione:

    Ecco come rimuovere una sottostringa da sinistra o da destra in Excel. Vi ringrazio per la lettura e vi aspetto sul nostro blog la prossima settimana!

    Download disponibili

    Rimuovere i primi o gli ultimi caratteri - esempi (file .xlsm)

    Ultimate Suite - versione di prova (file .exe)

    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.