Sadržaj
Kada radite sa nestrukturiranim tekstualnim podacima u vašim radnim listovima, često morate da ih raščlanite da biste dobili relevantne informacije. Ovaj članak će vas naučiti nekoliko jednostavnih načina da uklonite bilo koji broj znakova s lijeve ili desne strane tekstualnog niza.
Kako ukloniti znakove s lijeve strane u Excelu
Uklanjanje prvih znakova iz niza jedan je od najčešćih zadataka u Excelu, a može se postići s 3 različite formule.
Ukloni prvi znak u Excelu
Da izbrišete prvi znak iz niza, možete koristiti ili funkciju REPLACE ili kombinaciju funkcija DESNO i LEN.
REPLACE( string, 1, 1, "")Ovdje jednostavno uzimamo 1 znak sa prve pozicije i zamijenite ga praznim nizom ("").
DESNO( string, LEN( string) - 1)U ovoj formuli, mi koristite LEN funkciju za izračunavanje ukupne dužine niza i oduzmite 1 znak od njega. Razlika se servira DESNO, tako da izdvaja toliko znakova s kraja niza.
Na primjer, da biste uklonili prvi znak iz ćelije A2, formule idu na sljedeći način:
=REPLACE(A2, 1, 1, "")
=RIGHT(A2, LEN(A2) - 1)
Ukloni znakove s lijeve strane
Da biste uklonili vodeće znakove s lijeve strane niza, također koristite REPLACE ili DESNO i LEN funkcioniše, ali navedite koliko znakova želite da obrišete svaki put:
REPLACE( string , 1, num_chars ,"")Ili
DESNO( string , LEN( niz ) - broj_znakova )Na primjer, za uklanjanje prva 2 znaka iz niza u A2, formule su:
=REPLACE(A2, 1, 2, "")
=RIGHT(A2, LEN(A2) - 2)
Za uklanjanje prva 3 znaka , formule imaju ovaj oblik:
=REPLACE(A2, 1, 3, "")
=RIGHT(A2, LEN(A2) - 3)
Snimak ekrana ispod prikazuje REPLACE formulu u akciji. Sa DESNIM LEN, rezultati bi bili potpuno isti.
Prilagođena funkcija za brisanje prvih n znakova
Ako vam ne smeta korištenje VBA u svojim radnim listovima, može kreirati vlastitu korisnički definiranu funkciju za brisanje znakova s početka niza, pod nazivom RemoveFirstChars . Kôd funkcije je ovako jednostavan:
Funkcija RemoveFirstChars(str As String, num_chars As Long) RemoveFirstChars = Right(str, Len(str) - num_chars) End FunkcijaKada je kod umetnut u vašu radnu knjigu ( detaljna uputstva su ovdje), možete ukloniti prvih n znakova iz date ćelije korištenjem ove kompaktne i intuitivne formule:
RemoveFirstChars(string, num_chars)Na primjer, da izbrišete prvi znak iz niza u A2, formula u B2 je:
=RemoveFirstChars(A2, 1)
Da biste uklonili prva dva karaktera iz A3, formula u B3 je:
=RemoveFirstChars(A4, 2)
Da obrišete prva tri znaka iz A4, formula u B4 je:
=RemoveFirstChars(A4, 3)
Više o Korištenje prilagođenih funkcija u Excelu.
Kako ukloniti znakoves desne strane
Da biste uklonili znakove s desne strane niza, također možete koristiti izvorne funkcije ili kreirati vlastitu.
Ukloniti posljednji znak u Excelu
Da biste izbrisali posljednji znak u ćeliji, generička formula je:
LEFT( string , LEN( string ) - 1)U ovoj formuli oduzimate 1 od ukupna dužina niza i proslijediti razliku funkciji LEFT kako bi ona izdvojila toliki broj znakova s početka niza.
Na primjer, za uklanjanje posljednjeg znaka iz ćelije A2, formula u B2 je:
=LEFT(A2, LEN(A2) - 1)
Ukloni znakove s desne strane
Da biste uklonili dati broj znakova s kraja ćelije, generička formula je:
LEFT( string , LEN( string ) - broj_znakova )Logika je ista kao u gornjoj formuli, a ispod je nekoliko primjeri.
Da biste uklonili zadnja 3 znaka , koristite 3 za num_chars :
=LEFT(A2, LEN(A2) - 3)
Da biste izbrisali zadnjih 5 znakova , navedite 5 za broj_znakova :
75 39
Prilagođena funkcija za uklanjanje zadnjih n znakova u Excelu
Ako želite imati vlastitu funkciju za uklanjanje bilo kojeg broja znakova s desne strane, dodajte ovaj VBA kod za vašu radnu svesku:
Funkcija RemoveLastChars(str As String, num_chars As Long) RemoveLastChars = Left(str, Len(str) - num_chars) End FunkcijaFunkcija je nazvana RemoveLastChars i njena sintaksi jedva da trebabilo koje objašnjenje:
RemoveLastChars(string, num_chars)Da bismo ga testirali na terenu, hajde da se riješimo zadnjeg znaka u A2:
=RemoveLastChars(A2, 1)
Pored toga, uklonit ćemo posljednja 2 znaka s desne strane niza u A3:
=RemoveLastChars(A3, 2)
Da izbrišemo posljednja 3 znaka iz ćelije A4, formula je:
=RemoveLastChars(A4, 3)
Kao što možete vidjeti na slici ispod, naša prilagođena funkcija radi briljantno!
Kako ukloniti znakove s desne i lijeve strane odjednom
U situaciji kada trebate izbrisati znakove s obje strane niza, možete pokrenuti obje gore navedene formule uzastopno ili optimizirati posao uz pomoć funkcija MID.
MID( string , lijevo _ znakovi + 1, LEN( string ) - ( lijevo _ znakovi + desno _ znakovi )Gdje:
- znakovi_lijevo - broj znakova za brisanje s lijeve strane.
- chars_right - broj znakova za brisanje s desne strane.
Pretpostavimo da želite izdvojiti t korisničko ime iz niza kao što je mailto:[email protected] . Za to je potrebno ukloniti dio teksta s početka ( mailto: - 7 znakova) i s kraja ( @gmail.com - 11 znakova).
Poslužite gornje brojeve u formuli:
=MID(A2, 7+1, LEN(A2) - (7+10))
...i rezultat vas neće natjerati da čekate:
Da shvatite šta je zapravo što se događa ovdje, prisjetimo se sintakseMID funkcija, koja se koristi za izvlačenje podniza određene veličine iz sredine originalnog niza:
MID(tekst, početni_broj, broj_znakova)Argument tekst ne postavlja nikakva pitanja - to je izvorni niz (A2 u našem slučaju).
Da biste dobili poziciju prvog znaka za izdvajanje ( početni_broj ), dodajete 1 broju znakova koje treba ukloniti s lijeva (7+1).
Da odredite koliko znakova treba vratiti ( broj_znakova ), izračunat ćete ukupan broj uklonjenih znakova (7 + 11) i oduzeti zbroj od dužine cijelog niza: LEN(A2) - (7+10)).
Dobijte rezultat kao broj
Koju god od gornjih formula koristite, izlaz je uvijek tekst, čak i kada vraćena vrijednost sadrži samo brojeve. Da biste vratili rezultat kao broj , ili umotajte osnovnu formulu u funkciju VALUE ili izvedite neku matematičku operaciju koja ne utječe na rezultat, npr. pomnožite sa 1 ili dodajte 0. Ova tehnika je posebno korisna kada želite dalje izračunati rezultate.
Pretpostavimo da ste uklonili prvi znak iz ćelija A2:A6 i želite da zbrojite rezultirajuće vrijednosti. Zapanjujuće, trivijalna formula SUM vraća nulu. Zašto je to? Očigledno, zato što zbrajate nizove, a ne brojeve. Izvršite jednu od dolje navedenih operacija i problem je riješen!
=VALUE(REPLACE(A2, 1, 1, ""))
=RIGHT(A2, LEN(A2) - 1) * 1
=RemoveFirstChars(A2, 1) + 0
Ukloni prvi ili zadnji znak sa Flash Fill
U Excelu2013 i novije verzije, postoji još jedan jednostavan način za brisanje prvog i posljednjeg znaka u Excelu - funkcija Flash Fill.
- U ćeliju pored prve ćelije s originalnim podacima upišite željeni rezultat izostavlja prvi ili posljednji znak iz originalnog niza i pritisnite Enter .
- Počnite kucati očekivanu vrijednost u sljedećoj ćeliji. Ako Excel osjeti uzorak u podacima koje unosite, slijedit će isti obrazac u ostalim ćelijama i prikazati pregled vaših podataka bez prvog/zadnjeg znaka.
- Samo pritisnite tipku Enter da prihvatite pregled.
Uklanjanje znakova po poziciji pomoću Ultimate Suite
Tradicionalno, korisnici našeg Ultimate Suite-a mogu obaviti zadatak s nekoliko klikova bez potrebe da zapamtite pregršt različitih formula.
Da biste izbrisali prvih ili zadnjih n znakova iz niza, ovo je ono što trebate učiniti:
- Na Ablebits podacima karticu, u grupi Tekst kliknite Ukloni > Ukloni po poziciji .
Na primjer, da uklonimo prvi znak, konfiguriramo sljedeća opcija:
Tako možete ukloniti podniz s lijeve ili desne strane u Excelu. Zahvaljujem vam na čitanju i radujem se što ću vas vidjeti na našem blogutjedan!
Dostupna preuzimanja
Ukloni prve ili posljednje znakove - primjere (.xlsm fajl)
Ultimate Suite - probna verzija (.exe fajl)