Excel: Eliminați primele sau ultimele caractere (din stânga sau din dreapta)

  • Imparte Asta
Michael Brown

Atunci când lucrați cu date text nestructurate în foile de calcul, trebuie adesea să le analizați pentru a prelua informații relevante. Acest articol vă va învăța câteva modalități simple de a elimina orice număr de caractere din partea stângă sau dreaptă a unui șir de text.

    Cum să eliminați caracterele din stânga în Excel

    Îndepărtarea primelor caractere dintr-un șir de caractere este una dintre cele mai comune sarcini în Excel și poate fi realizată cu 3 formule diferite.

    Eliminați primul caracter în Excel

    Pentru a șterge primul caracter dintr-un șir de caractere, puteți utiliza fie funcția REPLACE, fie o combinație a funcțiilor RIGHT și LEN.

    REPLACE( șir de caractere , 1, 1, "")

    Aici, pur și simplu luăm 1 caracter din prima poziție și îl înlocuim cu un șir gol ("").

    RIGHT( șir de caractere , LEN( șir de caractere ) - 1)

    În această formulă, folosim funcția LEN pentru a calcula lungimea totală a șirului și scădem 1 caracter din aceasta. Diferența este servită la RIGHT, astfel încât se extrag atâtea caractere de la sfârșitul șirului.

    De exemplu, pentru a elimina primul caracter din celula A2, formulele sunt următoarele:

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

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

    Eliminați caracterele din stânga

    Pentru a elimina caracterele de început din partea stângă a unui șir de caractere, utilizați, de asemenea, funcțiile REPLACE sau RIGHT și LEN, dar specificați câte caractere doriți să ștergeți de fiecare dată:

    REPLACE( șir de caractere , 1, num_chars , "")

    Sau

    RIGHT( șir de caractere , LEN( șir de caractere ) - num_chars )

    De exemplu, pentru a elimina primele 2 caractere din șirul din A2, formulele sunt:

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

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

    Pentru a elimina primele 3 caractere , formulele iau această formă:

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

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

    Captura de ecran de mai jos arată formula REPLACE în acțiune. Cu RIGHT LEN, rezultatele ar fi fost exact aceleași.

    Funcție personalizată pentru a șterge primele n caractere

    Dacă nu vă deranjează să folosiți VBA în foile de lucru, puteți crea propria funcție definită de utilizator pentru a șterge caracterele de la începutul unui șir de caractere, numită RemoveFirstChars Codul funcției este foarte simplu:

    Function RemoveFirstChars(str As String , num_chars As Long ) RemoveFirstChars = Right(str, Len(str) - num_chars) End Function

    După ce codul este inserat în registrul de lucru (instrucțiunile detaliate sunt aici), puteți elimina primele n caractere dintr-o anumită celulă folosind această formulă compactă și intuitivă:

    RemoveFirstChars(string, num_chars)

    De exemplu, pentru a șterge prima dintr-un șir de caractere din A2, formula din B2 este:

    =RemoveFirstChars(A2, 1)

    Pentru a dezbrăca primele două caractere din A3, formula din B3 este:

    =RemoveFirstChars(A4, 2)

    Pentru a șterge primele trei caractere din A4, formula din B4 este:

    =RemoveFirstChars(A4, 3)

    Mai multe despre Utilizarea funcțiilor personalizate în Excel.

    Cum să eliminați caracterele din dreapta

    Pentru a elimina caracterele din partea dreaptă a unui șir de caractere, puteți utiliza, de asemenea, funcții native sau puteți crea una proprie.

    Eliminați ultimul caracter în Excel

    Pentru a șterge ultimul caracter dintr-o celulă, formula generică este:

    STÂNGA( șir de caractere , LEN( șir de caractere ) - 1)

    În această formulă, se scade 1 din lungimea totală a șirului și se transmite diferența către funcția LEFT pentru ca aceasta să extragă atâtea caractere de la începutul șirului.

    De exemplu, pentru a elimina ultimul caracter din celula A2, formula din B2 este:

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

    Eliminați caracterele din dreapta

    Pentru a elimina un anumit număr de caractere de la sfârșitul unei celule, formula generică este:

    STÂNGA( șir de caractere , LEN( șir de caractere ) - num_chars )

    Logica este aceeași ca în formula de mai sus, iar mai jos sunt câteva exemple.

    Pentru a îndepărta ultimele 3 caractere , utilizați 3 pentru num_chars :

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

    Pentru a șterge ultimele 5 caractere , furnizează 5 pentru num_chars :

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

    Funcție personalizată pentru a elimina ultimele n caractere în Excel

    Dacă doriți să aveți propria funcție pentru a elimina orice număr de caractere din dreapta, adăugați acest cod VBA în registrul de lucru:

    Function RemoveLastChars(str As String , num_chars As Long ) RemoveLastChars = Left(str, Len(str) - num_chars) End Function

    Funcția se numește RemoveLastChars iar sintaxa sa nu are nevoie de nicio explicație:

    RemoveLastChars(string, num_chars)

    Pentru a face un test pe teren, să scăpăm de ultimul caracter în A2:

    =RemoveLastChars(A2, 1)

    În plus, vom elimina ultimele 2 caractere din partea dreaptă a șirului din A3:

    =RemoveLastChars(A3, 2)

    Pentru a șterge ultimele 3 caractere din celula A4, formula este:

    =RemoveLastChars(A4, 3)

    După cum puteți vedea în captura de ecran de mai jos, funcția noastră personalizată funcționează cu brio!

    Cum să eliminați caracterele din dreapta și din stânga deodată

    În situația în care trebuie să ștergeți caracterele de pe ambele părți ale unui șir de caractere, puteți fie să executați ambele formule de mai sus în mod secvențial, fie să optimizați operațiunea cu ajutorul funcției MID.

    MID( șir de caractere , stânga _ caractere + 1, LEN( șir de caractere ) - ( stânga _ caractere + dreapta _ caractere )

    Unde:

    • chars_left - numărul de caractere care trebuie șterse din stânga.
    • chars_right - numărul de caractere care trebuie șterse din dreapta.

    Să presupunem că doriți să extrageți numele de utilizator dintr-un șir de caractere de tipul mailto:[email protected] Pentru aceasta, o parte din text trebuie eliminată de la început ( mailto: - 7 caractere) și de la capăt ( @gmail.com - 11 caractere).

    Se servesc numerele de mai sus în formula:

    =MID(A2, 7+1, LEN(A2) - (7+10))

    ...iar rezultatul nu vă va face să așteptați:

    Pentru a înțelege ce se întâmplă de fapt aici, să ne amintim sintaxa funcției MID, care este utilizată pentru a extrage un subșir de o anumită dimensiune din mijlocul șirului original:

    MID(text, start_num, num_chars)

    The text nu ridică nicio întrebare - este vorba de șirul sursă (A2 în cazul nostru).

    Pentru a obține poziția primului caracter de extras ( start_num ), se adaugă 1 la numărul de caractere care urmează să fie eliminate din stânga (7+1).

    Pentru a determina câte caractere trebuie returnate ( num_chars ), se calculează totalul caracterelor eliminate (7 + 11) și se scade suma din lungimea întregului șir: LEN(A2) - (7+10)).

    Obțineți rezultatul ca număr

    Oricare dintre formulele de mai sus ar fi cea utilizată, rezultatul este întotdeauna text, chiar și atunci când valoarea returnată conține numai numere. Pentru a returna valoarea rezultatul ca număr , fie înglobați formula de bază în funcția VALUE, fie efectuați o operație matematică care nu afectează rezultatul, de exemplu, înmulțiți cu 1 sau adăugați 0. Această tehnică este utilă în special atunci când doriți să calculați rezultatele mai departe.

    Să presupunem că ați eliminat primul caracter din celulele A2:A6 și doriți să însumați valorile rezultate. În mod surprinzător, o banală formulă SUM returnează zero. De ce? Evident, pentru că adunați șiruri de caractere, nu numere. Efectuați una dintre operațiile de mai jos și problema este rezolvată!

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

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

    =RemoveFirstChars(A2, 1) + 0

    Eliminați primul sau ultimul caracter cu Flash Fill

    În Excel 2013 și versiunile ulterioare, există încă o modalitate ușoară de a șterge primele și ultimele caractere în Excel - funcția Flash Fill.

    1. Într-o celulă adiacentă primei celule cu datele originale, introduceți rezultatul dorit, omițând primul sau ultimul caracter din șirul original și apăsați Enter .
    2. Începeți să introduceți valoarea așteptată în următoarea celulă. Dacă Excel detectează modelul din datele pe care le introduceți, va urma același model în restul celulelor și va afișa o previzualizare a datelor dvs. fără primul / ultimul caracter.
    3. Trebuie doar să apăsați tasta Enter pentru a accepta previzualizarea.

    Eliminați caracterele în funcție de poziție cu Ultimate Suite

    În mod tradițional, utilizatorii suitei noastre Ultimate Suite pot îndeplini această sarcină cu câteva clicuri, fără a fi nevoie să rețină o mână de formule diferite.

    Pentru a șterge primele sau ultimele n caractere dintr-un șir de caractere, trebuie să faceți următoarele:

    1. Pe Date Ablebits în fila Text grup, faceți clic pe Eliminați > Eliminați în funcție de poziție .

  • În panoul add-in-ului, selectați intervalul țintă, specificați câte caractere doriți să ștergeți și apăsați butonul Eliminați .
  • De exemplu, pentru a elimina primul caracter, configurăm următoarea opțiune:

    Iată cum se elimină un substring din stânga sau din dreapta în Excel. Vă mulțumesc pentru lectură și vă aștept pe blog săptămâna viitoare!

    Descărcări disponibile

    Eliminați primele sau ultimele caractere - exemple (fișier .xlsm)

    Ultimate Suite - versiunea de încercare (fișier .exe)

    Michael Brown este un pasionat de tehnologie dedicat, cu o pasiune pentru simplificarea proceselor complexe folosind instrumente software. Cu mai mult de un deceniu de experiență în industria tehnologiei, el și-a perfecționat abilitățile în Microsoft Excel și Outlook, precum și în Google Sheets și Docs. Blogul lui Michael este dedicat împărtășirii cunoștințelor și experienței sale cu alții, oferind sfaturi și tutoriale ușor de urmat pentru îmbunătățirea productivității și eficienței. Indiferent dacă sunteți un profesionist experimentat sau un începător, blogul lui Michael oferă informații valoroase și sfaturi practice pentru a profita la maximum de aceste instrumente software esențiale.