Змест
У падручніку тлумачацца функцыі 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)