Korištenje Excel funkcija REPLACE i SUBSTITUTE - primjeri formule

  • Podijeli Ovo
Michael Brown

Vodič objašnjava funkcije Excel REPLACE i SUBSTITUTE s primjerima korištenja. Pogledajte kako koristiti funkciju REPLACE s tekstualnim nizovima, brojevima i datumima i kako ugnijezditi nekoliko funkcija REPLACE ili SUBSTITUTE unutar jedne formule.

Prošle sedmice smo raspravljali o različitim načinima korištenja funkcija FIND i SEARCH unutar vaše Excel radne listove. Danas ćemo detaljnije pogledati dvije druge funkcije za zamjenu teksta u ćeliji na osnovu njene lokacije ili za zamjenu jednog tekstualnog niza drugim na temelju sadržaja. Kao što ste možda pretpostavili, govorim o Excel funkcijama REPLACE i SUBSTITUTE.

    Excel funkcija REPLACE

    Funkcija REPLACE u Excelu vam omogućava da zamijenite jednu ili nekoliko znakovi u tekstualnom nizu s drugim karakterom ili skupom znakova.

    REPLACE(old_text, start_num, num_chars, new_text)

    Kao što vidite, Excel REPLACE funkcija ima 4 argumenta, od kojih su svi obavezni.

    • Stari_tekst - originalni tekst (ili referenca na ćeliju s originalnim tekstom) u kojoj želite zamijeniti neke znakove.
    • Početni_broj - pozicija prvog znaka unutar starog_teksta koji želite zamijeniti.
    • Broj_znakova - broj znakova koje želite zamijeniti.
    • Novi_tekst - zamjenski tekst.

    Na primjer, da promijenite riječ " sun " u " son ", možete koristiti sljedećeformula:

    =REPLACE("sun", 2, 1, "o")

    I ako stavite originalnu riječ u neku ćeliju, recimo A2, možete dati odgovarajuću referencu ćelije u argumentu old_text:

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

    Napomena. Ako je argument start_num ili num_chars negativan ili nenumerički, formula za zamjenu programa Excel vraća #VALUE! greška.

    Korišćenje Excel funkcije REPLACE s numeričkim vrijednostima

    Funkcija REPLACE u Excelu je dizajnirana za rad s tekstualnim nizovima. Naravno, možete ga koristiti za zamjenu numeričkih znakova koji su dio tekstualnog niza, na primjer:

    =REPLACE(A2, 7, 4, "2016")

    Primijetite da prilažemo "2016 " u dvostrukim navodnicima kao što obično radite sa tekstualnim vrijednostima.

    Na sličan način možete zamijeniti jednu ili više cifara unutar broja. Na primjer:

    =REPLACE(A4, 4, 4,"6")

    I opet, morate staviti zamjensku vrijednost u dvostruke navodnike ("6").

    Bilješka. Excel REPLACE formula uvijek vraća tekstualni niz , a ne broj. Na snimku ekrana iznad, primijetite lijevo poravnanje vraćene vrijednosti teksta u B2 i uporedite ga sa desnim poravnatim originalnim brojem u A2. A budući da je riječ o tekstualnoj vrijednosti, nećete je moći koristiti u drugim izračunima osim ako je ne pretvorite natrag u broj, na primjer množenjem sa 1 ili korištenjem bilo koje druge metode opisane u Kako pretvoriti tekst u broj.

    Korišćenje Excel funkcije REPLACE s datumima

    Kao što ste upravo vidjeli, funkcija REPLACE radi dobro sabrojeva, osim što vraća tekstualni niz :) Imajući u vidu da se u internom Excel sistemu datumi pohranjuju kao brojevi, možete pokušati koristiti neke zamjenske formule za datume. Rezultati bi bili prilično neugodni.

    Na primjer, imate datum u A2, recimo 1-14.10., i želite promijeniti " Okt " u " Nov ". Dakle, pišete formulu REPLACE(A2, 4, 3, "Nov") koja govori Excelu da zamijeni 3 znaka u ćelijama A2 počevši od 4. znaka... i dobili ste sljedeći rezultat:

    Zašto? Jer "01-Oct-14" je samo vizuelni prikaz osnovnog serijskog broja (41913) koji predstavlja datum. Dakle, naša formula Replace mijenja posljednje 3 cifre u gornjem serijskom broju u " Nov " i vraća tekstualni niz "419Nov".

    Da bi funkcija Excel REPLACE ispravno radila datume, možete prvo pretvoriti datume u tekstualne nizove pomoću funkcije TEXT ili bilo koje druge tehnike prikazane u Kako pretvoriti datum u tekst u Excelu. Alternativno, možete ugraditi funkciju TEXT direktno u argument old_text funkcije REPLACE:

    =REPLACE(TEXT(A2, "dd-mmm-yy"), 4, 3, "Nov")

    Ne zaboravite da je rezultat gornje formule tekstualni niz , i stoga ovo rješenje radi samo ako ne planirate koristiti izmijenjene datume u daljim proračunima. Ako su vam potrebni datumi, a ne tekstualni nizovi, koristite funkciju DATEVALUE da pretvorite vrijednosti koje vraćaExcel funkcija REPLACE nazad na datume:

    =DATEVALUE(REPLACE(TEXT(A2, "dd-mmm-yy"), 4, 3, "Nov"))

    Ugniježđene funkcije REPLACE za višestruke zamjene u ćeliji

    Prilično često ćete možda morati izvršiti više od jedne zamjene u ista ćelija. Naravno, možete izvršiti jednu zamjenu, ispisati srednji rezultat u dodatni stupac, a zatim ponovo koristiti funkciju REPLACE. Međutim, bolji i profesionalniji način je korištenje ugniježđenih funkcija REPLACE koje vam omogućuju da izvršite nekoliko zamjena s jednom formulom. U ovom kontekstu, "ugniježđenje" znači stavljanje jedne funkcije u drugu.

    Razmotrite sljedeći primjer. Pretpostavimo da imate listu telefonskih brojeva u koloni A formatiranu kao "123456789" i želite da učinite da izgledaju više kao telefonski brojevi dodavanjem crtica. Drugim riječima, vaš cilj je pretvoriti "123456789" u "123-456-789".

    Umetanje prve crtice je jednostavno. Pišete uobičajenu Excel Replace formulu koja zamjenjuje nula znakova crticom, tj. dodaje crticu na 4. poziciju u ćeliji:

    =REPLACE(A2,4,0,"-")

    Rezultat Formula za zamjenu iznad je sljedeća:

    U redu, i sada moramo umetnuti još jednu crticu na 8. poziciju. Da biste to učinili, postavite gornju formulu u drugu Excel funkciju REPLACE. Preciznije, ugrađujete ga u argument old_text druge funkcije, tako da će druga funkcija REPLACE obraditi vrijednost koju vraćaprvo ZAMIJENI, a ne vrijednost u ćeliji A2:

    =REPLACE(REPLACE(A2,4,0,"-"),8,0,"-")

    Kao rezultat, dobijate telefonske brojeve u željenom formatu:

    Na sličan način, možete koristiti ugniježđene REPLACE funkcije da tekstualni nizovi izgledaju kao datumi dodavanjem kose crte (/) gdje je prikladno:

    =(REPLACE(REPLACE(A2,3,0,"/"),6,0,"/"))

    Štaviše, tekstualne nizove možete pretvoriti u stvarne datume tako što ćete gornju formulu REPLACE omotati funkcijom DATEVALUE:

    =DATEVALUE(REPLACE(REPLACE(A2,3,0,"/"),6,0,"/"))

    I naravno, niste ograničeni u broju funkcija možete ugniježditi unutar jedne formule (moderne verzije programa Excel 2010, 2013 i 2016 dozvoljavaju do 8192 znaka i do 64 ugniježđene funkcije u formuli).

    Na primjer, možete koristiti 3 ugniježđene funkcije REPLACE za neka se broj u A2 pojavi kao datum i vrijeme:

    =REPLACE(REPLACE(REPLACE(REPLACE(A2,3,0,"/") ,6,0,"/"), 9,0, " "), 12,0, ":")

    Zamjena niza koji se pojavljuje na različitoj poziciji u svakoj ćeliji

    Do sada smo se u svim primjerima bavili vrijednostima slične prirode i vršili zamjene u istoj poziciji uključeno u svakoj ćeliji. Ali zadaci u stvarnom životu često su složeniji od toga. U vašim radnim listovima, znakovi koje treba zamijeniti se ne moraju nužno pojaviti na istom mjestu u svakoj ćeliji, i stoga ćete morati pronaći poziciju prvog znaka koji treba zamijeniti. Sljedeći primjer će pokazati o čemu govorim.

    Pretpostavimo da imate listu e-pošteadresiranje u koloni A. I naziv jedne kompanije je promijenjen iz "ABC" u, recimo, "BCA". Dakle, morate u skladu s tim ažurirati adrese e-pošte svih klijenata.

    Ali problem je u tome što su imena klijenata različite dužine i zbog toga ne možete točno odrediti gdje počinje naziv kompanije. Drugim riječima, ne znate koju vrijednost treba unijeti u argument start_num funkcije REPLACE programa Excel. Da biste to saznali, koristite Excel funkciju FIND da odredite poziciju prvog znaka u nizu "@abc":

    =FIND("@abc",A2)

    A zatim unesite gornju funkciju FIND u start_num argument vaše REPLACE formule:

    =REPLACE(A2, FIND("@abc",A2), 4, "@bca")

    Savjet. Uključujemo "@" u našu formulu za pronalaženje i zamjenu programa Excel kako bismo izbjegli slučajne zamjene u dijelu imena adresa e-pošte. Naravno, postoji vrlo mala šansa da će se takva poklapanja dogoditi, a ipak biste trebali biti sigurni.

    Kao što vidite na sljedećem snimku ekrana, formula nema problema s pronalaženjem i zamjenom stari tekst sa novim. Međutim, ako tekstualni niz koji treba zamijeniti nije pronađen, formula vraća #VALUE! greška:

    I želimo da formula vrati originalnu adresu e-pošte umjesto greške. Dakle, priložimo naš FIND & ZAMIJENI formulu u funkciji IFERROR:

    =IFERROR(REPLACE(A2, FIND("@abc",A2), 4, "@bca"),A2)

    I ova poboljšana formula radi savršeno, zar ne?

    Još jedna praktičnaprimjena funkcije REPLACE je veliko slovo u ćeliji. Kad god se bavite listom imena, proizvoda i slično, možete koristiti gornju formulu da promijenite prvo slovo u VELIKO slovo.

    Savjet. Ako želite izvršiti zamjene u originalnim podacima, lakši način bi bio korištenje Excel dijaloškog okvira PRONAĐI i ZAMJENA.

    Excel funkcija ZAMJENA

    Funkcija ZAMJENA u Excelu zamjenjuje jednu ili više instanci datog znaka ili tekstualnog niza sa specificiranim karakterom(ovima).

    Sintaksa funkcije SUBSTITUTE Excel je sljedeća:

    SUBSTITUTE(tekst, stari_tekst, novi_tekst, [broj_instance])

    Prva tri argumenta su obavezna, a posljednji je opcionalan.

    • Tekst - originalni tekst u koji želite zamijeniti znakove. Može se dostaviti kao testni niz, referenca ćelije ili rezultat druge formule.
    • Stari_tekst - znakovi koje želite zamijeniti.
    • Novi_tekst - novi karakter(ovi) za zamjenu starog_teksta.
    • Broj_instance - pojavljivanje starog_teksta koji želite zamijeniti. Ako se izostavi, svako pojavljivanje starog teksta bit će promijenjeno u novi tekst.

    Na primjer, sve donje formule zamjenjuju "1" sa "2" u ćeliji A2, ali vraćaju različite rezultate ovisno o tome koji broj navedete u posljednjem argumentu:

    =SUBSTITUTE(A2, "1", "2", 1) - Zamjenjuje prvo pojavljivanje "1" sa"2".

    =SUBSTITUTE(A2, "1", "2", 2) - Zamjenjuje drugo pojavljivanje "1" sa "2".

    =SUBSTITUTE(A2, "1", "2") - Zamjenjuje sva pojavljivanja "1" sa "2".

    U praksi se funkcija SUBSTITUTE također koristi za uklanjanje neželjenih znakova iz ćelija. Za primjere iz stvarnog života pogledajte:

    • Kako ukloniti znakove ili riječi iz stringa
    • Kako izbrisati neželjene znakove iz ćelija

    Napomena. Funkcija SUBSTITUTE u Excelu je osjetljiva na velika i mala slova . Na primjer, sljedeća formula zamjenjuje sve instance velikog slova "X" sa "Y" u ćeliji A2, ali neće zamijeniti nijednu instancu malih slova "x".

    Zamijenite više vrijednosti jednom formulom (ugniježđena ZAMJENA)

    Kao što je slučaj s Excel funkcijom REPLACE, možete ugnijezditi nekoliko funkcija SUBSTITUTE unutar jedne formule kako biste izvršili nekoliko zamjena odjednom, tj. zamjenu nekoliko znakova ili podnizova s ​​jednom formulom.

    Pretpostavimo da imate tekstualni niz poput " PR1, ML1, T1 " u ćeliji A2, gdje "PR" znači "Projekat, "ML " označava "Milestone" i "T" znači "Zadatak". Ono što želite je zamijeniti tri koda punim nazivima. Da biste to postigli, možete napisati 3 različite ZAMJENSKE formule:

    =SUBSTITUTE(A2,"PR", "Project ")

    =SUBSTITUTE(A2, "ML", "Milestone ")

    =SUBSTITUTE(A2, "T", "Task ")

    A zatim ih ugnijezdite jedno u drugo:

    =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"PR","Project "),"ML","Milestone "),"T","Task ")

    Primijetite da smo dodali razmak na kraju svaki argument new_text za bolječitljivost.

    Da biste naučili druge načine zamjene više vrijednosti u isto vrijeme, pogledajte Kako napraviti masovno pronalaženje i zamjenu u Excelu.

    Excel REPLACE vs . Excel SUBSTITUTE

    Excel funkcije REPLACE i SUBSTITUTE su veoma slične jedna drugoj po tome što su obe dizajnirane da menjaju tekstualne nizove. Razlike između ove dvije funkcije su sljedeće:

    • SUBSTITUTE zamjenjuje jednu ili više instanci datog znaka ili tekstualnog niza. Dakle, ako znate tekst koji treba zamijeniti, koristite funkciju SUBSTITUTE Excela.
    • REPLACE mijenja znakove na navedenoj poziciji tekstualnog niza. Dakle, ako znate poziciju znakova koji treba zamijeniti, koristite Excel funkciju REPLACE.
    • Funkcija SUBSTITUTE u Excelu omogućava dodavanje opcionog parametra (instance_num) koji određuje koja pojava starog_teksta treba promijeniti u novi_tekst.

    Ovako koristite funkcije SUBSTITUTE i REPLACE u Excelu. Nadamo se da će ovi primjeri biti korisni u rješavanju vaših zadataka. Zahvaljujem vam na čitanju i nadam se da ćemo se sljedeće sedmice vidjeti na našem blogu!

    Preuzmite radnu svesku za vježbu

    ZAMJENI i ZAMJENI primjere formule (.xlsx datoteka)

    Michael Brown je posvećen tehnološki entuzijasta sa strašću za pojednostavljenje složenih procesa pomoću softverskih alata. Sa više od decenije iskustva u tehnološkoj industriji, usavršio je svoje vještine u Microsoft Excelu i Outlooku, kao i Google Sheets i Docs. Michaelov blog je posvećen dijeljenju svog znanja i stručnosti s drugima, pružajući jednostavne savjete i tutorijale za poboljšanje produktivnosti i efikasnosti. Bilo da ste iskusni profesionalac ili početnik, Michaelov blog nudi vrijedne uvide i praktične savjete za izvlačenje maksimuma iz ovih osnovnih softverskih alata.