Съдържание
В последните няколко статии обсъдихме различни текстови функции - тези, които се използват за манипулиране на текстови низове. Днес вниманието ни е насочено към функцията RIGHT, която е предназначена за връщане на определен брой символи от най-дясната страна на низ. Подобно на други текстови функции на Excel, RIGHT е много проста и ясна, но въпреки това има няколко неочевидни приложения, които могат да се окажат полезни привашата работа.
Синтаксис на функцията RIGHT в Excel
Функцията RIGHT в Excel връща определен брой символи от края на текстов низ.
Синтаксисът на функцията RIGHT е следният:
RIGHT(текст, [num_chars])Къде:
- Текст (задължително) - текстовият низ, от който искате да извлечете символи.
- Num_chars (незадължително) - броят на символите за извличане, като се започне от най-десния символ.
- Ако num_chars е пропуснат, се връща 1 последен символ от символния низ (по подразбиране).
- Ако num_chars е по-голям от общия брой символи в низа, се връщат всички символи.
- Ако num_chars е отрицателно число, формулата Right връща грешката #VALUE!.
Например, за да извлечете последните 3 символа от низа в клетка А2, използвайте тази формула:
=ПРАВО(A2, 3)
Резултатът може да изглежда по следния начин:
Важна забележка! Функцията RIGHT на Excel винаги връща текстов низ , дори ако първоначалната стойност е число. За да принудите формула Right да изведе число, използвайте я в комбинация с функцията VALUE, както е показано в този пример.
Как да използвате функцията RIGHT в Excel - примери за формули
В реалните работни листове функцията RIGHT на Excel рядко се използва самостоятелно. В повечето случаи тя се използва заедно с други функции на Excel като част от по-сложни формули.
Как да получите подниз, който идва след определен символ
В случай че искате да извлечете подниз, който следва определен символ, използвайте функцията SEARCH или FIND, за да определите позицията на този символ, извадете позицията от общата дължина на низа, върната от функцията LEN, и изтеглете този брой символи от най-дясната страна на оригиналния низ.
ПРАВИЛНО( низ , LEN( низ ) - SEARCH( символ , низ ))Да речем, че клетката А2 съдържа първото и фамилното име, разделени с интервал, и вие искате да изтеглите фамилното име в друга клетка. Просто вземете общата формула по-горе и поставете А2 на мястото на низ , и " " (интервал) в темпото на характер:
=ПРАВО(A2,LEN(A2)-SEARCH(" ",A2))
Формулата ще даде следния резултат:
По подобен начин можете да получите подниз, който следва всеки друг символ, напр. запетая, точка, тире и т.н. Например, за да извлечете подниз, който идва след тире, използвайте тази формула:
=RIGHT(A2,LEN(A2)-SEARCH("-",A2))
Резултатът ще изглежда по следния начин:
Как да извлечете подниз след последната поява на разделителя
Когато работите със сложни низове, които съдържат няколко появявания на един и същ разделител, често може да се наложи да извлечете текста вдясно от последното появяване на разделителя. За да разберете нещата по-лесно, разгледайте следните изходни данни и желания резултат:
Както можете да видите на горната снимка, колона А съдържа списък с грешки. Вашата цел е да извлечете описанието на грешката, което идва след последното двоеточие във всеки низ. Допълнително усложнение е, че оригиналните низове могат да съдържат различен брой разделителни знаци, например A3 съдържа 3 двоеточия, а A5 - само едно.
Ключът към намирането на решение е да се определи позицията на последния разделител в изходния низ (последната поява на двоеточие в този пример). За да направите това, ще трябва да използвате няколко различни функции:
- Получете броя на разделителите в оригиналния низ. Това е лесна част:
- Първо, изчислявате общата дължина на низа, като използвате функцията LEN: LEN(A2)
- Второ, изчислявате дължината на низа без разделители, като използвате функцията SUBSTITUTE, която замества всички срещания на двоеточие с нищо: LEN(SUBSTITUTE(A2,":",""))
- Накрая изваждате дължината на оригиналния низ без разделители от общата дължина на низа: LEN(A2)-LEN(SUBSTITUTE(A2,":",""))
За да се уверите, че формулата работи правилно, можете да я въведете в отделна клетка и резултатът ще бъде 2, което е броят на двоеточията в клетка А2.
- Замяна на последния разделител с някакъв уникален символ. За да извлечем текста, който идва след последния разделител в низа, трябва да "маркираме" по някакъв начин последната поява на разделителя. За тази цел нека заменим последната поява на двоеточие с символ, който не се появява никъде в оригиналните низове, например със знака за паунд (#).
Ако сте запознати със синтаксиса на функцията SUBSTITUTE на Excel, може би си спомняте, че тя има четвърти незадължителен аргумент (instance_num), който позволява да се замени само конкретна поява на посочения символ. И тъй като вече сме изчислили броя на разделителите в низа, просто въведете горната функция в четвъртия аргумент на друга функция SUBSTITUTE:
=SUBSTITUTE(A2,":", "#",LEN(A2)-LEN(SUBSTITUTE(A2,":","")))
Ако поставите тази формула в отделна клетка, тя ще върне този низ: ERROR:432#Връзката е прекъсната
- Получаване на позицията на последния разделител в низа. В зависимост от това с какъв знак сте заменили последния разделител, използвайте SEARCH (търсене без отчитане на големи и малки букви) или FIND (търсене без отчитане на големи и малки букви), за да определите позицията на този знак в низа. Заменихме последното двоеточие със знака #, затова използваме следната формула, за да определим позицията му:
=SEARCH("#", SUBSTITUTE(A2,":", "#",LEN(A2)-LEN(SUBSTITUTE(A2,":",""))))
В този пример формулата връща 10, което е позицията на # в заменения низ.
- Връщане на подниз отдясно на последния разделител. След като знаете позицията на последния разделител в низ, трябва само да извадите това число от общата дължина на низа и да накарате функцията RIGHT да върне толкова символа от края на оригиналния низ:
=RIGHT(A2,LEN(A2)-SEARCH("$",SUBSTITUTE(A2,":","$",LEN(A2)-LEN(SUBSTITUTE(A2,":","")))))
Както е показано на скрийншота по-долу, формулата работи перфектно:
Ако работите с голям набор от данни, в който различните клетки могат да съдържат различни разделители, може да искате да включите горната формула във функцията IFERROR, за да предотвратите евентуални грешки:
=IFERROR(RIGHT(A2,LEN(A2)-SEARCH("$",SUBSTITUTE(A2,":","$",LEN(A2)-LEN(SUBSTITUTE(A2,":",""))))), A2)
В случай че даден низ не съдържа нито една поява на посочения разделител, ще бъде върнат оригиналният низ, както в ред 6 на снимката по-долу:
Как да премахнете първите N символа от низ
Освен за извличане на подниз от края на низ, функцията RIGHT на Excel е полезна и в случаите, когато искате да премахнете определен брой символи от началото на низ.
В набора от данни, използван в предишния пример, може да искате да премахнете думата "ERROR", която се появява в началото на всеки низ, и да оставите само номера и описанието на грешката. За да направите това, извадете броя на символите, които трябва да бъдат премахнати, от общата дължина на низа и подайте този брой на num_chars аргумент на функцията Excel RIGHT:
ПРАВИЛНО( низ , LEN( низ )- number_of_chars_to_remove )В този пример премахваме първите 6 символа (5 букви и двоеточие) от текстовия низ в A2, така че формулата ни изглежда по следния начин:
=RIGHT(A2, LEN(A2)-6)
Може ли функцията RIGHT на Excel да върне число?
Както беше споменато в началото на този урок, функцията RIGHT в Excel винаги връща текстов низ, дори ако първоначалната стойност е число. Но какво става, ако работите с набор от данни с цифри и искате изходът също да бъде цифров? Лесно се заобикаля, като се вложи формулата Right във функцията VALUE, която е специално проектирана да преобразува низ, представляващ число, в число.
Например за извличане на последните 5 символа (пощенски код) от низа в A2 и преобразуване на извлечените символи в число използвайте тази формула:
=СТОЙНОСТ(RIGHT(A2, 5))
Резултатът е показан на скрийншота по-долу - моля, обърнете внимание на подравнените надясно числа в колона В, за разлика от подравнените наляво текстови низове в колона А:
Защо функцията RIGHT не работи с дати?
Тъй като функцията RIGHT на Excel е предназначена за работа с текстови низове, докато датите се представят с числа във вътрешната система на Excel, формулата Right не може да извлече отделна част от датата, като например ден, месец или година. Ако се опитате да направите това, ще получите само няколко последни цифри от числото, представляващо датата.
Да предположим, че имате датата 18 януари 2017 г. Ако се опитате да извлечете годината с формулата RIGHT(A1,4), резултатът ще бъде 2753, което са последните 4 цифри на числото 42753, което представлява 18 януари 2017 г. в системата на Excel.
"И така, как да извлека определена част от дата?", може би ще ме попитате. Като използвате една от следните функции:
- Функция DAY за извличане на ден: =DAY(A1)
- Функция MONTH за получаване на месец: =MONTH(A1)
- Функция YEAR за извличане на година: =YEAR(A1)
Следната снимка показва резултатите:
Ако вашият датите се представят чрез текстови низове , което често се случва, когато експортирате данни от външен източник, нищо не ви пречи да използвате функцията RIGHT, за да извлечете последните няколко символа в низ, които представляват определена част от датата:
Функцията RIGHT на Excel не работи - причини и решения
Ако дадена формула Right не работи правилно в работния ви лист, най-вероятно причината е една от следните:
- Има един или повече крайни интервали За да премахнете бързо допълнителните интервали в клетките, използвайте функцията TRIM на Excel или добавката Cell Cleaner.
- Сайтът num_chars аргументът е по-малко от нула Разбира се, едва ли ще искате нарочно да въведете отрицателно число във формулата си, но ако num_chars аргумент се изчислява от друга функция на Excel или комбинация от различни функции и вашата Права формула връща грешката #VALUE!, не забравяйте да проверите вложената(ите) функция(и) за грешки.
- Първоначалната стойност е a дата . Ако сте следили внимателно този урок, вече знаете защо функцията RIGHT не може да работи с дати. Ако някой е пропуснал предишния раздел, можете да намерите пълни подробности в Защо функцията RIGHT на Excel не работи с дати.
Ето как се използва функцията ПРАВИЛО в Excel. За да разгледате по-отблизо формулите, разгледани в този урок, можете да изтеглите нашата примерна работна книга по-долу. Благодаря ви за прочетеното и се надявам да се видим в нашия блог следващата седмица.
Налични изтегляния
Функция Excel RIGHT - примери (.xlsx файл)