Выкарыстанне функцый Excel REPLACE і SUBSTITUTE - прыклады формул

  • Падзяліцца Гэтым
Michael Brown

У падручніку тлумачацца функцыі Excel REPLACE і SUBSTITUTE з прыкладамі выкарыстання. Паглядзіце, як выкарыстоўваць функцыю REPLACE з тэкставымі радкамі, лічбамі і датамі, а таксама як укласці некалькі функцый REPLACE або SUBSTITUTE у адну формулу.

На мінулым тыдні мы абмяркоўвалі розныя спосабы выкарыстання функцый FIND і SEARCH у межах вашы працоўныя аркушы Excel. Сёння мы больш падрабязна разгледзім дзве іншыя функцыі для замены тэксту ў ячэйцы ў залежнасці ад яе месцазнаходжання або замены аднаго тэкставага радка іншым у залежнасці ад зместу. Як вы ўжо здагадаліся, я кажу пра функцыі Excel REPLACE і SUBSTITUTE.

    Функцыя REPLACE Excel

    Функцыя REPLACE у Excel дазваляе вам памяняць месцамі адну або некалькі сімвалаў у тэкставым радку іншым сімвалам або наборам сімвалаў.

    ЗАМЕНІЦЬ(стары_тэкст, пачатковы_нум, колькасць_знакаў, новы_тэкст)

    Як вы бачыце, функцыя ЗАМЕНЫ ў Excel мае 4 аргументы, усе з якіх абавязковыя.

    • Стары_тэкст - арыгінальны тэкст (або спасылка на ячэйку з арыгінальным тэкстам), у якім вы хочаце замяніць некаторыя сімвалы.
    • Пачатковы_нумер - пазіцыя першага сімвала ў old_text, які вы хочаце замяніць.
    • Num_chars - колькасць сімвалаў, якія вы хочаце замяніць.
    • New_text - тэкст замены.

    Напрыклад, каб змяніць слова " сонца " на " сын ", вы можаце выкарыстоўваць наступнаеформула:

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

    І калі вы змясціце арыгінальнае слова ў нейкую ячэйку, скажам, A2, вы можаце паставіць адпаведную спасылку на ячэйку ў аргументе old_text:

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

    Заўвага. Калі аргумент start_num або num_chars адмоўны або не лікавы, формула Excel Replace вяртае #VALUE! памылка.

    Выкарыстанне функцыі REPLACE Excel з лікавымі значэннямі

    Функцыя REPLACE у Excel прызначана для працы з тэкставымі радкамі. Вядома, вы можаце выкарыстоўваць яго для замены лічбавых сімвалаў, якія з'яўляюцца часткай тэкставага радка, напрыклад:

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

    Звярніце ўвагу, што мы прыкладаем "2016 " у падвойных двукоссях, як вы звычайна робіце з тэкставымі значэннямі.

    Аналагічным чынам вы можаце замяніць адну або некалькі лічбаў у ліку. Напрыклад:

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

    Зноў жа, вы павінны заключыць значэнне замены ў двукоссе ("6").

    Нататка. Формула REPLACE Excel заўсёды вяртае тэкставы радок , а не лік. На скрыншоце вышэй звярніце ўвагу на левае выраўноўванне вернутага тэкставага значэння ў B2 і параўнайце яго з выраўнаваным па правым краі зыходным лікам у A2. І паколькі гэта тэкставае значэнне, вы не зможаце выкарыстоўваць яго ў іншых вылічэннях, пакуль не пераўтворыце яго назад у лік, напрыклад, шляхам множання на 1 або выкарыстання любога іншага метаду, апісанага ў раздзеле "Як пераўтварыць тэкст у лік".

    Выкарыстанне функцыі REPLACE з датамі ў Excel

    Як вы толькі што бачылі, функцыя REPLACE выдатна працуе злічбы, за выключэннем таго, што ён вяртае тэкставы радок :) Памятаючы, што ва ўнутранай сістэме Excel даты захоўваюцца ў выглядзе лікаў, вы можаце паспрабаваць выкарыстоўваць некаторыя формулы Replace для дат. Вынікі будуць вельмі няёмкімі.

    Напрыклад, у вас ёсць дата ў A2, скажам, 1-кастрычнік-14, і вы хочаце змяніць " кастрычнік " на " лістапад ". Такім чынам, вы пішаце формулу REPLACE(A2, 4, 3, "Nov"), якая загадвае Excel замяніць 3 сімвалы ў ячэйках A2, пачынаючы з 4-га сімвала... і атрымліваеце наступны вынік:

    Чаму гэта? Таму што "01-Oct-14" - гэта толькі візуальнае прадстаўленне базавага серыйнага нумара (41913), які ўяўляе дату. Такім чынам, наша формула Replace змяняе апошнія 3 лічбы ў прыведзеным вышэй парадкавым нумары на " Nov " і вяртае тэкставы радок "419Nov".

    Каб функцыя REPLACE Excel працавала правільна даты, вы можаце спачатку пераўтварыць даты ў тэкставыя радкі, выкарыстоўваючы функцыю TEXT або любую іншую тэхніку, прадэманстраваную ў раздзеле Як пераўтварыць дату ў тэкст у Excel. Акрамя таго, вы можаце ўбудаваць функцыю TEXT непасрэдна ў аргумент old_text функцыі REPLACE:

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

    Калі ласка, памятайце, што вынік прыведзенай вышэй формулы: тэкставы радок , таму гэта рашэнне працуе толькі ў тым выпадку, калі вы не плануеце выкарыстоўваць змененыя даты ў далейшых разліках. Калі вам патрэбныя даты, а не тэкставыя радкі, выкарыстоўвайце функцыю DATEVALUE, каб перавярнуць значэнні, якія вяртаеФункцыя REPLACE у Excel вяртаецца да дат:

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

    Укладзеныя функцыі REPLACE для выканання некалькіх замен у ячэйцы

    Даволі часта вам можа спатрэбіцца зрабіць больш чым адну замену ў тая ж клетка. Вядома, вы можаце зрабіць адну замену, вывесці прамежкавы вынік у дадатковы слупок, а затым зноў выкарыстоўваць функцыю REPLACE. Аднак лепшым і больш прафесійным спосабам з'яўляецца выкарыстанне ўкладзеных функцый REPLACE , якія дазваляюць выконваць некалькі замен адной формулай. У гэтым кантэксце "ўкладзенасць" азначае размяшчэнне адной функцыі ў іншай.

    Разгледзім наступны прыклад. Выкажам здагадку, што ў вас ёсць спіс тэлефонных нумароў у слупку A, адфарматаваны як "123456789", і вы хочаце зрабіць іх больш падобнымі на нумары тэлефонаў, дадаўшы злучок. Іншымі словамі, ваша мэта - ператварыць "123456789" у "123-456-789".

    Уставіць першы злучок лёгка. Вы пішаце звычайную формулу Excel Replace, якая замяняе нуль сімвалаў на злучок, г.зн. дадае злучок у 4-ю пазіцыю ў ячэйцы:

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

    Вынік вышэй Формула замены выглядае наступным чынам:

    Добра, цяпер нам трэба ўставіць яшчэ адзін злучок у 8-ю пазіцыю. Каб зрабіць гэта, вы змясціце прыведзеную вышэй формулу ў іншую функцыю REPLACE Excel. Дакладней, вы ўстаўляеце яго ў аргумент old_text іншай функцыі, так што другая функцыя REPLACE будзе апрацоўваць значэнне, вернутаеспачатку ЗАМЕНІЦЬ, а не значэнне ў ячэйцы A2:

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

    У выніку вы атрымаеце нумары тэлефонаў у патрэбным фарматаванні:

    Аналагічным чынам вы можаце выкарыстоўваць укладзеныя функцыі REPLACE, каб тэкставыя радкі выглядалі як даты, дадаўшы касую рысу (/), дзе неабходна:

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

    Больш за тое, вы можаце пераўтварыць тэкставыя радкі ў рэальныя даты, абгарнуўшы прыведзеную вышэй формулу REPLACE функцыяй DATEVALUE:

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

    І, натуральна, вы не абмежаваныя ў колькасці функцый вы можаце ўкладваць адну формулу (сучасныя версіі Excel 2010, 2013 і 2016 дазваляюць уключаць да 8192 сімвалаў і да 64 укладзеных функцый у формулу).

    Напрыклад, вы можаце выкарыстоўваць 3 укладзеныя функцыі REPLACE для каб лік у A2 выглядаў як дата і час:

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

    Замена радка, які з'яўляецца ў іншай пазіцыі ў кожнай ячэйцы

    Да гэтага часу ва ўсіх прыкладах мы мелі справу са значэннямі падобнай прыроды і рабілі замены ў аднолькавых пазіцыях на ў кожную клетку. Але задачы ў рэальным жыцці часта больш складаныя. У вашых працоўных аркушах сімвалы, якія трэба замяніць, могуць неабавязкова з'явіцца ў адным і тым жа месцы ў кожнай ячэйцы, і таму вам трэба будзе знайсці пазіцыю першага сімвала , які трэба замяніць. Наступны прыклад прадэманструе, пра што я кажу.

    Выкажам здагадку, што ў вас ёсць спіс адрасоў электроннай поштыадрасаванне ў калонцы А. І назва адной кампаніі змянілася з "ABC" на, скажам, "BCA". Такім чынам, вы павінны адпаведным чынам абнавіць усе адрасы электроннай пошты кліентаў.

    Але праблема ў тым, што імёны кліентаў маюць розную даўжыню, і таму вы не можаце вызначыць, дзе менавіта пачынаецца назва кампаніі. Іншымі словамі, вы не ведаеце, якое значэнне паставіць у аргументе start_num функцыі REPLACE Excel. Каб даведацца пра гэта, выкарыстоўвайце функцыю FIND Excel, каб вызначыць пазіцыю першага сімвала ў радку "@abc":

    =FIND("@abc",A2)

    А затым увядзіце вышэйпаказаную функцыю FIND у start_num аргумент вашай формулы REPLACE:

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

    Савет. Мы ўключаем "@" у формулу пошуку і замены ў Excel, каб пазбегнуць выпадковай замены ў частцы назвы адрасоў электроннай пошты. Вядома, існуе вельмі малая верагоднасць таго, што такія супадзенні адбудуцца, і тым не менш вы можаце быць у бяспецы.

    Як вы бачыце на наступным скрыншоце, у формулы няма праблем з пошукам і заменай стары тэкст з новым. Аднак, калі тэкставы радок, які трэба замяніць, не знойдзены, формула вяртае #VALUE! error:

    І мы хочам, каб формула вяртала зыходны адрас электроннай пошты замест памылкі. Такім чынам, давайце заключым наш FIND & ЗАМЕНІЦЬ формулу ў функцыі IFERROR:

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

    І гэтая палепшаная формула працуе ідэальна, ці не так?

    Яшчэ адзін практычныпрымяненне функцыі REPLACE заключаецца ў тым, каб зрабіць першую літару ў вочку вялікай. Кожны раз, калі вы маеце справу са спісам назваў, прадуктаў і падобным, вы можаце выкарыстоўваць формулу, прыведзеную вышэй, каб змяніць першую літару на ВЕЛІКУЮ.

    Парада. Калі вы хочаце зрабіць замены ў зыходных дадзеных, прасцейшым спосабам будзе выкарыстанне дыялогавага акна ЗНАЙСІЦЬ і ЗАМЕНЫ Excel.

    Функцыя ЗАМЕНЫ ў Excel

    Функцыя ЗАМЕНЫ ў Excel замяняе адзін або некалькі асобнікаў дадзенага сімвала або тэкставага радка з указаным сімвалам(-амі).

    Сінтаксіс функцыі SUBSTITUTE Excel наступны:

    SUBSTITUTE(тэкст, стары_тэкст, новы_тэкст, [нумер_экзэмпляра])

    Першыя тры аргументы абавязковыя, а апошні неабавязковы.

    • Тэкст - зыходны тэкст, у які вы хочаце замяніць сімвалы. Можа быць прадастаўлены як тэставы радок, спасылка на ячэйку або вынік іншай формулы.
    • Стары_тэкст - сімвал(ы), якія вы хочаце замяніць.
    • New_text - новыя сімвалы, якімі трэба замяніць old_text.
    • Instance_num - з'яўленне old_text, які вы хочаце замяніць. Калі апусціць, кожнае ўваходжанне старога тэксту будзе зменена на новы тэкст.

    Напрыклад, усе прыведзеныя ніжэй формулы замяняюць "1" на "2" у ячэйцы A2, але вяртаюць розныя вынікі у залежнасці ад таго, які лік вы ўвялі ў апошнім аргументе:

    =SUBSTITUTE(A2, "1", "2", 1) - замяняе першае ўваходжанне "1" на"2".

    =SUBSTITUTE(A2, "1", "2", 2) - Замяняе другое ўваходжанне "1" на "2".

    =SUBSTITUTE(A2, "1", "2") - Замяняе ўсе ўваходжанні "1" на "2".

    На практыцы функцыя SUBSTITUTE таксама выкарыстоўваецца для выдалення непажаданых сімвалаў з вочак. Прыклады з рэальнага жыцця глядзіце:

    • Як выдаліць сімвалы або словы з радка
    • Як выдаліць непатрэбныя сімвалы з вочак

    Заўвага. Функцыя SUBSTITUTE у Excel адчувальная да рэгістра . Напрыклад, наступная формула замяняе ўсе выпадкі вялікай літары "X" на "Y" у ячэйцы A2, але яна не замяняе любыя выпадкі малой літары "x".

    Замена некалькіх значэнняў адной формулай (укладзеная ЗАМЕНА)

    Як і ў выпадку з функцыяй ЗАМЕНА Excel, вы можаце ўкласці некалькі функцый ЗАМЕНЫ ў адну формулу, каб зрабіць некалькі замен адначасова, г.зн. некалькі сімвалаў або падрадкоў з адной формулай.

    Выкажам здагадку, што ў вас ёсць тэкставы радок накшталт " PR1, ML1, T1 " у ячэйцы A2, дзе "PR" азначае "Праект, "ML " расшыфроўваецца як "Вяха", а "T" азначае "Задача". Вы хочаце замяніць тры коды поўнымі імёнамі. Каб дасягнуць гэтага, вы можаце напісаць 3 розныя формулы ЗАМЕНЫ:

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

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

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

    А затым укласці іх адно ў адно:

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

    Звярніце ўвагу, што мы дадалі прабел у канцы кожны аргумент new_text лепшзручнасць чытання.

    Каб даведацца пра іншыя спосабы замены некалькіх значэнняў адначасова, глядзіце, як зрабіць масавы пошук і замену ў Excel.

    Excel REPLACE супраць Excel SUBSTITUTE

    Функцыі Excel REPLACE і SUBSTITUTE вельмі падобныя адна на адну тым, што абедзве прызначаны для замены тэкставых радкоў. Адрозненні паміж дзвюма функцыямі наступныя:

    • SUBSTITUTE замяняе адзін або некалькі экземпляраў зададзенага сімвала або тэкставага радка. Такім чынам, калі вы ведаеце тэкст, які трэба замяніць, выкарыстоўвайце функцыю SUBSTITUTE Excel.
    • REPLACE змяняе сімвалы ў вызначанай пазіцыі тэкставага радка. Такім чынам, калі вы ведаеце пазіцыю сімвала(-аў), які трэба замяніць, скарыстайцеся функцыяй Excel REPLACE.
    • Функцыя SUBSTITUTE у Excel дазваляе дадаць неабавязковы параметр (instance_num), які вызначае, якое ўзнікненне старога_тэксту трэба змяніць на новы_тэкст.

    Вось як вы выкарыстоўваеце функцыі ЗАМЕНЫ і ЗАМЕНЫ ў Excel. Спадзяемся, гэтыя прыклады спатрэбяцца пры вырашэнні вашых задач. Я дзякую вам за чытанне і спадзяюся ўбачыць у нашым блогу на наступным тыдні!

    Спампаваць практычны сшытак

    Прыклады формул ЗАМЕНІЦЬ і ЗАМЕНЫ (файл .xlsx)

    Майкл Браўн - адданы энтузіяст тэхналогій, які любіць спрашчэнне складаных працэсаў з дапамогай праграмных інструментаў. Маючы больш чым дзесяцігадовы досвед працы ў індустрыі тэхналогій, ён удасканальваў свае навыкі ў Microsoft Excel і Outlook, а таксама ў Google Sheets і Docs. Блог Майкла прысвечаны таму, каб падзяліцца сваімі ведамі і вопытам з іншымі, даючы простыя ў выкананні парады і падручнікі для павышэння прадукцыйнасці і эфектыўнасці. Незалежна ад таго, з'яўляецеся вы дасведчаным прафесіяналам або пачаткоўцам, блог Майкла прапануе каштоўную інфармацыю і практычныя парады, каб атрымаць максімальную аддачу ад гэтых неабходных праграмных інструментаў.