Excel правсимв до знака

Skip to content

Функция ПРАВСИМВ в Excel — примеры и советы.

В последних нескольких статьях мы обсуждали различные текстовые функции. Сегодня наше внимание сосредоточено на ПРАВСИМВ (RIGHT в английской версии), которая предназначена для возврата указанного количества символов из крайней правой части текстовой строки. Как и другие функции для работы с текстом, ПРАВСИМВ очень проста и понятна. Тем не менее, у нее есть несколько неочевидных применений, которые могут оказаться полезными в вашей работе.

  • Правила синтаксиса
  • Как вернуть текст после определенного символа
  • Извлекаем текст после последнего вхождения разделителя
  • Как удалить первые N знаков?
  • Как извлечь число при помощи ПРАВСИМВ?
  • Почему ПРАВСИМВ не работает с датами?
  • Почему не работает? Причины и решения.

Синтаксис.

ПРАВСИМВ возвращает указанное количество символов от конца текста.

Правила написания:

ПРАВСИМВ(текст; [число_знаков])

Где:

  • Текст  (обязательно) — текст, из которого вы хотите извлечь символы.
  • число_знаков  (необязательно) — количество символов для извлечения, начиная с самого правого символа.
    • Если аргумент опущен, возвращается один последний символ (по умолчанию).
    • Когда число знаков для извлечения больше, чем общее количество символов в ячейке, возвращается весь текст.
    • Если введено отрицательное число, формула возвращает ошибку #ЗНАЧ!.

Например, чтобы извлечь последние 6 символов из ячейки A2, запишите:

=ПРАВСИМВ(A2; 6)

Результат может выглядеть примерно так:

Важное замечание! ПРАВСИМВ всегда возвращает текст, даже если исходное значение является числом. Чтобы заставить формулу выводить число, используйте ее в сочетании с ЗНАЧЕН, как показано в этом примере .

В реальных таблицах ПРАВСИМВ редко используется в одиночку. В большинстве случаев вы будете использовать ее вместе с другими функциями Excel в составе более сложных формул. Об этом и поговорим далее.

Как получить подстроку после определенного символа.

Если вы хотите извлечь все знаки, следующие за определенным символом, используйте формулу ПОИСК или НАЙТИ, чтобы определить позицию этого символа, вычтите позицию из общей длины текста, возвращаемой функцией ДЛСТР , и отделите это количество символов от его правого края.

ПРАВСИМВ( текст; ДЛСТР( текст ) — ПОИСК( символ ; текст ))

Скажем, ячейка A2 содержит имя и фамилию, разделенные пробелом, и вы хотите перенести фамилию в другую ячейку. Просто используйте приведенную выше общую формулу:

=ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(» «;A2))

Формула даст следующий результат:

Аналогичным образом вы можете получить подстроку, которая следует за любым другим символом, например за запятой, точкой с запятой, дефисом и т. д. Например, чтобы извлечь то, что записано после дефиса, используйте выражение:

=ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(«-«;A2))

Результат будет выглядеть примерно так:

Как извлечь подстроку после последнего вхождения разделителя

При работе со сложными текстовыми выражениями, которые содержат несколько вхождений одного и того же разделителя, вам часто может потребоваться получить текст справа от последнего появления разделителя. Чтобы упростить понимание, взгляните на следующие исходные данные и желаемый результат:
рис4

Как вы можете видеть на скриншоте выше, столбец A содержит список ошибок. Ваша цель — получить описание ошибки, которое идет после последнего двоеточия. Дополнительная сложность заключается в том, что исходные значения могут содержать разное количество разделителей, например, A3 содержит 3 двоеточия, а A5 — только одно.

Ключом к поиску решения является определение позиции последнего разделителя (последнее вхождение двоеточия в этом примере). Для этого вам нужно будет выполнить несколько несложных операций:

  1. Подсчитайте количество разделителей в исходной строке. Это несложно:
    • Вычисляете общую ее длину с помощью ДЛСТР(A2).
    • Определяем длину без разделителей, используя формулу ПОДСТАВИТЬ, которая заменяет все вхождения двоеточия ничем: ДЛСТР(ПОДСТАВИТЬ(A2; «:»; «»))
    • Наконец, вы вычитаете длину исходной строки без разделителей из общей длины:  ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»))

Чтобы убедиться, что формула работает правильно, вы можете ввести ее в отдельную ячейку, и результатом будет 2, то есть количество двоеточий в ячейке A2.

  1. Замените последний разделитель на какой-нибудь уникальный символ. Чтобы извлечь текст, который идет после последнего разделителя, нам нужно каким-то образом «пометить» это последнее вхождение разделителя. Для этого давайте заменим последнее вхождение двоеточия символом, который нигде не встречается в исходных значениях, например, знаком доллара ($).

Если вы знакомы с синтаксисом функции ПОДСТАВИТЬ, вы можете помнить, что у нее есть 4-й необязательный аргумент (номер вхождения), который позволяет заменять только конкретное появление указанного символа. И поскольку мы уже вычислили количество разделителей, просто впишите рассмотренное выше выражение в четвертый аргумент функции ПОДСТАВИТЬ:

=ПОДСТАВИТЬ(A2;»:»;»$»;ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»)))

Если вы поместите эту формулу в отдельную ячейку, она вернет:          ERROR: 432 $ Connection timed out

  1. Определяем позицию последнего разделителя. В зависимости от того, на какой символ вы заменили последний разделитель, используйте ПОИСК (без учета регистра) или НАЙТИ (с учетом регистра), чтобы определить позицию этого символа. Мы заменили последнее двоеточие на знак $, поэтому используем следующую формулу, чтобы узнать его местоположение:

ПОИСК(«$»; ПОДСТАВИТЬ(A2;»:»;»$»;ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»)))))

В этом примере формула возвращает 10, что является позицией $ в измененном тексте.

  1. Получаем подстроку справа от последнего разделителя. Теперь, когда вы знаете позицию последнего разделителя, все, что вам нужно сделать, это вычесть это число из общей длины строки и использовать ПРАВСИМВ, чтобы вернуть это количество символов из конца исходного текста:

ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(«$»; ПОДСТАВИТЬ(A2;»:»;»$»;ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»)))))

Если вы работаете с большим набором данных, где разные ячейки могут содержать различные разделители, вы можете заключить приведенную выше формулу в функцию ЕСЛИОШИБКА, чтобы предотвратить возможные сообщения об ошибках:

=ЕСЛИОШИБКА(ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(«$»; ПОДСТАВИТЬ(A2;»:»;»$»;ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»))))); A2)

Как показано на скриншоте ниже, формула работает отлично:

Замечание. В случае, если ячейка не содержит ни одного вхождения указанного разделителя, будет возвращена исходная строка целиком.

Как удалить первые N символов из ячейки

Помимо извлечения отрезка из конца строки, ПРАВСИМВ пригодится в ситуациях, когда вы хотите удалить определенное количество символов из её начала.

В наборе данных, использованном в предыдущем примере, вы можете удалить слово «ERROR», которое появляется в начале, и оставить только номер ошибки и описание. Для этого вычтите количество удаляемых символов из общей длины текста и передайте это число в  аргумент количество_знаков:

ПРАВСИМВ( текст; ДЛСТР (текст) — число_символов_для_удаления )

В этом примере мы удаляем первые 6 символов (5 букв и двоеточие) из содержимого A2, поэтому наша формула выглядит следующим образом:

=ПРАВСИМВ(A2; ДЛСТР(A2)-6)

Может ли функция Excel ПРАВСИМВ вернуть число?

Как упоминалось в начале этого руководства, ПРАВСИМВ в Excel всегда возвращает текст, даже если исходное значение является числом. Но что, если вы работаете с числовым набором данных и хотите, чтобы результат тоже был числовым? Простой обходной путь — вложить формулу ПРАВСИМВ в функцию ЗНАЧЕН, которая специально разработана для преобразования текста, состоящего из цифр, в число.

Например, чтобы извлечь последние 6 символов (почтовый индекс) из значения A2 и преобразовать их в число, используйте эту формулу:

=ЗНАЧЕН(ПРАВСИМВ(A2; 6))

На рисунке ниже показан результат. Обратите внимание на числа с выравниванием по правому краю в столбце B, в отличие от текстовых значений, которые выровнены по левому краю в столбце A:

Почему ПРАВСИМВ не работает с датами?

Потому что она предназначена для работы с текстовыми значениями, тогда как даты на самом деле являются числами во внутренней системе Excel. Формула ПРАВСИМВ не может получить отдельную часть даты — день, месяц или год. Если вы попытаетесь это сделать, все, что вы получите, — это несколько последних цифр числа, представляющего дату.

Предположим, у вас есть дата 9 августа 2020 года в ячейке A1. Если вы попытаетесь извлечь год с помощью формулы ПРАВСИМВ(A1,4), результатом будет 4052, что является последними четырьмя цифрами числа 44052, представляющего 9 августа 2020года в системе Excel.

«Итак, как мне получить определенную часть даты?», — спросите вы меня. Используя одно из следующих выражений:

  • Функция ДЕНЬ для извлечения дня: = ДЕНЬ(A1)
  • Функция МЕСЯЦ, чтобы получить месяц: = МЕСЯЦ(A1)
  • ГОД, чтобы вытащить год: = ГОД(A1)

На скриншоте показаны результаты:

Если ваши даты записаны в виде текста, что часто бывает при экспорте данных из других программ, то ничто не мешает вам использовать ПРАВСИМВ для извлечения последних нескольких символов, которые представляют определенную часть даты:

Теперь наша попытка извлечь год из даты вполне удачна.

Почему не работает? Причины и решения.

Это может быть связано с одной из следующих причин:

  1. В исходных данных есть один или несколько концевых пробелов. Чтобы быстро удалить лишние пробелы в ячейках, используйте функцию СЖПРОБЕЛЫ.
  2. Аргумент число_знаков меньше нуля. Конечно, вряд ли вам захочется специально добавлять отрицательное число в формулу, но если этот аргумент вычисляется какой-то формулой Excel, и вы получаете ошибку #ЗНАЧ!, то обязательно проверьте вложенные выражения на наличие ошибок.
  3. Исходное значение — дата. Если вы внимательно следовали этому руководству, вы уже знаете, почему формула ПРАВСИМВ не может работать с датами. 

Вот как вы можете использовать ПРАВСИМВ в Excel. 

Все описанные выше манипуляции с текстовыми значениями вы можете выполнить без формул при помощи специального инструмента работы с текстом, который является частью надстройки Ultimate Suite. Вы сможете без проблем избавиться от лишних пробелов и ненужных символов, поменять регистр букв, подсчитать символы и слова в ячейке или в диапазоне, добавить один и тот же текст в начало или конец всех ячеек в диапазоне, преобразовать текст в числа, разделить его по отдельным ячейкам, извлечь отдельные слова, найти и удалить дубли слов.

Благодарю вас за чтение и надеюсь увидеть вас в нашем блоге.

Как быстро посчитать количество слов в Excel В статье объясняется, как подсчитывать слова в Excel с помощью функции ДЛСТР в сочетании с другими функциями Excel, а также приводятся формулы для подсчета общего количества или конкретных слов в…
Как быстро извлечь число из текста в Excel В этом кратком руководстве показано, как можно быстро извлекать число из различных текстовых выражений в Excel с помощью формул или специального инструмента «Извлечь». Проблема выделения числа из текста возникает достаточно…
Как удалить пробелы в ячейках Excel Вы узнаете, как с помощью формул удалять начальные и конечные пробелы в ячейке, лишние интервалы между словами, избавляться от неразрывных пробелов и непечатаемых символов. В чем самая большая проблема с…
Функция СЖПРОБЕЛЫ — как пользоваться и примеры Вы узнаете несколько быстрых и простых способов, чтобы удалить начальные, конечные и лишние пробелы между словами, а также почему функция Excel СЖПРОБЕЛЫ (TRIM в английской версии)  не работает и как…
Функция ЛЕВСИМВ в Excel. Примеры использования и советы. В руководстве показано, как использовать функцию ЛЕВСИМВ (LEFT) в Excel, чтобы получить подстроку из начала текстовой строки, извлечь текст перед определенным символом, заставить формулу возвращать число и многое другое. Среди…
5 примеров с функцией ДЛСТР в Excel. Вы ищете формулу Excel для подсчета символов в ячейке? Если да, то вы, безусловно, попали на нужную страницу. В этом коротком руководстве вы узнаете, как использовать функцию ДЛСТР (LEN в английской версии)…
Как быстро сосчитать количество символов в ячейке Excel В руководстве объясняется, как считать символы в Excel. Вы изучите формулы, позволяющие получить общее количество символов в диапазоне и подсчитывать только определенные символы в одной или нескольких ячейках. В нашем предыдущем…

ПРАВСИМВ, ПРАВБ (функции ПРАВСИМВ, ПРАВБ)

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше

В этой статье описаны синтаксис формулы и использование функций ПРАВСИМВ иПРАВБ в Microsoft Excel.

Описание

Функция ПРАВСИМВ возвращает последний символ или несколько последних символов текстовой строки на основе заданного числа символов.

Функция ПРАВБ возвращает последний символ или несколько последних символов текстовой строки на основе заданного числа байтов.

Важно: 

  • Эти функции могут быть доступны не на всех языках.

  • Функция ПРАВСИМВ предназначена для языков с однобайтовой кодировкой, а ПРАВБ — для языков с двухбайтовой кодировкой. Язык по умолчанию, заданный на компьютере, влияет на возвращаемое значение следующим образом.

  • Функция ПРАВСИМВ всегда считает каждый символ (одно- или двухбайтовый) за один вне зависимости от языка по умолчанию.

  • Функция ПРАВБ считает каждый двухбайтовый символ за два, если включена поддержка ввода на языке с двухбайтовой кодировкой, а затем этот язык назначен языком по умолчанию. В противном случае функция ПРАВБ считает каждый символ за один.

К языкам, поддерживающим БДЦС, относятся японский, китайский (упрощенное письмо), китайский (традиционное письмо) и корейский.

Синтаксис

ПРАВСИМВ(текст;[число_знаков])

ПРАВБ(текст;[число_байтов])

Аргументы функций ПРАВСИМВ и ПРАВБ описаны ниже.

  • Текст    Обязательный. Текстовая строка, содержащая символы, которые требуется извлечь.

  • Число_знаков    Необязательный. Количество символов, извлекаемых функцией ПРАВСИМВ.

    • Значение «число_знаков» должно быть больше нуля или равно ему.

    • Если значение «число_знаков» превышает длину текста, функция ПРАВСИМВ возвращает весь текст.

    • Если значение «число_знаков» опущено, оно считается равным 1.

  • Число_байтов    Необязательный. Количество символов, извлекаемых функцией ПРАВБ.

    • Num_bytes должен быть больше нуля или равен нулю.

    • Если num_bytes больше, чем длина текста, то right возвращает весь текст.

    • Если num_bytes опущен, предполагается, что это 1.

Пример

Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.

Данные

Описание

Цена продажи

Число акций

Формула

Описание (результат)

Результат

=ПРАВСИМВ(A2;5)

Последние 7 знаков первой строки («продажи»)

продажи

=ПРАВСИМВ(A3)

Последний знак второй строки («й»)

r

Нужна дополнительная помощь?

 

Доброго вечера!  
Подскажите пожалуйста. Нужно вернуть все символы слева до ‘(штриха) или до +(плюса), что раньше встретится, но как?  

  Типа =ЛЕВСИМВ(A1;ПОИСК(ИЛИ(«+»;»‘»)A1)-1)

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Там еще один знак :)  

  МИН(ПОИСК({«+»;»‘»;»»»»};B2&»‘+»»»))

 

Спасибо, Виктор!  
Я ошибся, подразумевался не ещё один знак «(кавычки), а »(два штриха).  
Значит, конечная формула такая  

  =ЛЕВСИМВ(B2;МИН(ПОИСК({«+»;»‘»};B2&»‘+»»»))-1)  

  А зачем надо к B2 прибавлять перечень всех знаков (B2&»‘+»»»)?  
Объясните пожалуйста.

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

=ПСТР(B2;1;МИН(ПОИСК({«+»;»‘»;»»»»};B2&»‘+»»»))-1)  
Объединение B2&»‘+»»» помогает избежать ошибки при отсутствии знака (хоть всех) в тексте ячейки, ведь в объединенной строке все знаки есть.

 

Понятно, спасибо!  

  Значит,    
ПОИСК({«+»;»‘»;»»»};B2)    
ищет все эти знаки и если хоть одного не находит, то ошибка #ЗНАЧ!.    
А возвращает позицию только одного знака, который первым встретится.  

  Странная логика формулы: «вернуть позицию первого из перечисленных знаков, но пусть они все обязательно присутствуют». А зачем всем-то присутствовать?  
Да ладно, главное понял логику, хоть и странную.

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Для лучшего восприятия переставим знаки:  
ПОИСК({«‘»;»+»;»»»»};B2)  
Результат работы — не одно значение, а массив {#ЗНАЧ!;4;#ЗНАЧ!}  
ПСТР(ЛЕВСИМВ) просят только одно значение, поэтому из массива нужно вычленить нужное, в нашем случае минимальное:  
МИН({#ЗНАЧ!;4;#ЗНАЧ!}) при наличии ошибки в массиве тоже покажет ошибку.  
Самый простой способ избежать ошибки — подсунуть функции знаки в конце текста:  
ПОИСК({«‘»;»+»;»»»»};B2&»‘+»»»)  
Теперь массив выглядит красивее: {7;4;9}  

  =ЛЕВСИМВ(«12345»;МИН(ПОИСК({«‘»;»+»;»»»»};»12345″&»‘+»»»))-1)  
=ЛЕВСИМВ(«12345»;МИН({6;7;8})-1)  
=ЛЕВСИМВ(«12345»;5)

 

Логика немного другая. Формула ПОИСК({«+»;»‘»;»»»};B2) возвращает массив  

  {4;#ЗНАЧ!;#ЗНАЧ!}  

  , а функция МИН ищет минимальное число. Но если среди аргументов МИН есть ошибка, она возвращает ошибку. Можно написать так:  

  =ПСТР(B2;1;МИН(ЕСЛИ(ЕОШИБКА(ПОИСК({«+»;»‘»;»»»»};B2));999;ПОИСК({«+»;»‘»;»»»»};B2)))-1)  

  , но Виктор предложил более изящное решение.

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Аккуратнее, в варианте с ЕСЛИ важен одинаковый порядок в массиве констант для функции ПОИСК.

 

Благодарю за столь подробные объяснения!  
Теперь всё стало понятно.

 

Владимир

Пользователь

Сообщений: 8196
Регистрация: 21.12.2012

=ПСТР(B3;1;НАИМЕНЬШИЙ(ЕСЛИ((ПОИСКПОЗ(КОДСИМВ(ПСТР(B3;СТРОКА($1:$10);1)&1);{0;48;52})=1)*СТРОКА($1:$10)>0;СТРОКА($1:$10));1)-1)  

  Как вариант. Да тяжеловат, но построен на том, что находит все символы не относящиеся к числам.

«..Сладку ягоду рвали вместе, горьку ягоду я одна.»

 

Владимир

Пользователь

Сообщений: 8196
Регистрация: 21.12.2012

Извиняюсь, не ту формулу скопировал.  

  =ПСТР(B2;1;НАИМЕНЬШИЙ(ЕСЛИ((ПОИСКПОЗ(КОДСИМВ(ПСТР(B2;СТРОКА($1:$10);1)&1);{0;47;58})={1;3})*СТРОКА($1:$10)>0;СТРОКА($1:$10));1)-1)

«..Сладку ягоду рвали вместе, горьку ягоду я одна.»

 

Прошу прощения, что поднял старую тему, но у меня возник подобный вопрос.  
В своих файлах я иногда использую ВЭБ-запросы и получается так, что текст типа  
Локомотив — Динамо  
или  
Спартак (Нч) — Кр. Советов  
копируются в одну ячейку.  
Мне нужно разделить текст таким образом, чтобы названия команд были в разных ячейках.  
Покрутил выложеные здесь и на других вктках формулы, но…  
Т.е. мне нужно в одной ячейке отобразить текст до тире, а в следующей после тире.

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

Данные — Текст по столбцам.

 

Юрий М  
Во-первых, почему-то не получается. Видимо, импортируемое тире чем-то отличается от обычного, скорее длиной, и как такое тире набрать на клаве даже не знаю…)  
Во-вторых, файл обновляется по запросу при загрузке и каждый раз ходить в меню Данные как-то не с руки здесь нужно выходить при помощи формул…

 

CTRL+H  
НАЙТИ —  
ЗАМЕНИТЬ —

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

Да — попробуйте в НАЙТИ вставить СКОПИРОВАННОЕ «тире» :-)

 

Да, замена скопированного тире на обычное работает. Я это сделал при помощи формулы =Подставить().  
Но это решает только вопрос «во-первых».  
Меня больше волнует «во-вторых», где это можно проделать при помощи формул.  
Сейчас у меня вместо  
Спартак (Нч) — Кр. Советов  
при помощи подставить уже имеется    
Спартак (Нч) — Кр. Советов  
т.е. я поменял тире на обычное.

 

Daulet

Пользователь

Сообщений: 626
Регистрация: 01.01.1970

файл приложите  
у Вас тире в кол-ве разные, или один тире в ячейке

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

{quote}{login=kola}{date=09.05.2012 11:37}{thema=}{post}Спартак (Нч) — Кр. Советов  
при помощи подставить уже имеется    
Спартак (Нч) — Кр. Советов  
т.е. я поменял тире на обычное.{/post}{/quote}  
А вот теперь выделяете столбец (диапазон) и Текст по столбцам. Разделителем ставите дефис.

 

Daulet

Пользователь

Сообщений: 626
Регистрация: 01.01.1970

Если у Вас данные начинается с A1  
=ЕСЛИОШИБКА(ПОДСТАВИТЬ(ПРАВСИМВ(ПСТР(«-«&$A$1&»-«;1;ПОИСК(«/»;ПОДСТАВИТЬ(«-«&$A$1&»-«;»-«;»/»;СТОЛБЕЦ(B1))));ДЛСТР(ПСТР(«-«&$A$1&»-«;1;ПОИСК(«/»;ПОДСТАВИТЬ(«-«&$A$1&»-«;»-«;»/»;СТОЛБЕЦ(B1)))))-ПОИСК(«/»;ПОДСТАВИТЬ(«-«&$A$1&»-«;»-«;»/»;СТОЛБЕЦ(A1))));»-«;);»»)  

  СТОЛБЕЦ(A1) и СТОЛБЕЦ(B1) не меняете.  
еще / знака не должен быть в ячейках, если есть тогда замените все / знаки на другой как Вам угодно

 

Юрий М  
Это я уже проделал и всё получилось. Я уже об этом сказал.  
Меня интересует больше вариант с формулами. Причины этого я уже объяснил.  
Если допустить, что в ячейке С3 находится исходный текст    
Спартак (Нч) — Кр. Советов  
то я, кажись смог выделить первую команду при помощи формулы  
=ПОДСТАВИТЬ(ПСТР(C3;1;ПОИСК(«/»;ПОДСТАВИТЬ(C3;»-«;»/»))-1);» «;»»)  
и у меня получилось  
Спартак (Нч)  
Теперь нужно выделить в отдельную ячейку    
Кр. Советов  
пример прикладываю

 

Вообще-то при помощи  
=ПОДСТАВИТЬ(ПСТР(C3;1;ПОИСК(«/»;ПОДСТАВИТЬ(C3;»-«;»/»))-1);» «;»»)  
у меня полилось  
Спартак(Нч)  
без пробела между Спартак и (Нч), а єто нежелательно…

 

Daulet

Пользователь

Сообщений: 626
Регистрация: 01.01.1970

=ПСТР(C2;1;ПОИСК(» — «;C2)-1)  
=ПОДСТАВИТЬ(C2;E2&» — «;»»)

 

ABC  
Да, просто и со вкусом…))  
Спасибо! а то у меня получались 3-х этажные формулы…))  
Еще раз благодарю!

 

Прошу прощения, что опять будоражу эту тему, но у меня возник вопросЮ как выделить текст, который находится в скобках.  
К примеру, при помощи ВЭБ-запроса я в ячейке получил  
Боргес да Сільва Вілліан (Вілліан)  
а мне нужно только    
Вілліан  
Я, вроде, всё сделал, но слишком длинный путь при этом пришлось сделать.  
Можно ли это проделать одной формулой?  
Пример прилагаю.

 

k61

Пользователь

Сообщений: 2441
Регистрация: 21.12.2012

 
 

ikki

Пользователь

Сообщений: 9709
Регистрация: 22.12.2012

=ЕСЛИ(НАЙТИ(«(«;C7);ПСТР(C7;НАЙТИ(«(«;C7)+1;НАЙТИ(«)»;C7)-НАЙТИ(«(«;C7)-1);C7)  
(по файлу post_334820.xls)

фрилансер Excel, VBA — контакты в профиле
«Совершенствоваться не обязательно. Выживание — дело добровольное.» Э.Деминг

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Мо и фо…  
=ПОДСТАВИТЬ(ПСТР(C7;ПОИСК(«(«;C7)+1;20);»)»;)  
Без проверки на отсутствие скобок.  

  Ваш файл удален. Не издевайтесь.  
40 Кб в архиве для такого вопроса? Лень было две ячейки заполнить с именами со скобками? Учтите на будущее.

 

k61

Пользователь

Сообщений: 2441
Регистрация: 21.12.2012

#30

16.05.2012 09:49:54

Александр, Вам письмо.

Содержание

  • Оператор ПРАВСИМВ
    • Пример применения
  • Вопросы и ответы

Функция ПРАВСИМВ в Microsoft Excel

Среди различных функций в Экселе, предназначенных для работы с текстом, своими не совсем обычными возможностями выделяется оператор ПРАВСИМВ. Его задачей является извлечение из указанной ячейки заданного количества символов, отсчитывая с конца. Давайте более подробно узнаем о возможностях этого оператора и о нюансах использования его в практических целях на конкретных примерах.

Оператор ПРАВСИМВ

Функция ПРАВСИМВ извлекает из указанного элемента на листе то количество символов справа, которое укажет сам пользователь. Выводит конечный результат в ту ячейку, где располагается она сама. Данная функция относится к текстовой категории операторов Excel. Её синтаксис следующий:

=ПРАВСИМВ(текст;число_знаков)

Как видим, функция имеет всего два аргумента. Первый из них «Текст» может принимать вид, как собственно текстового выражения, так и ссылки на элемент листа, в котором оно располагается. В первом случае оператор будет извлекать указанное количество символов именно из текстового выражения, заданного в виде аргумента. Во втором случае функция будет «отщипывать» символы от текста, содержащегося в указанной ячейке.

Второй аргумент — «Число знаков» — представляет собой числовое значение, указывающее, какое именно количество символов в текстовом выражении, отсчитывая справа, нужно отобразить в целевой ячейке. Этот аргумент не является обязательным. Если его опустить, то считается, что он равен единице, то есть, в ячейку выводится только один самый крайний правый символ указанного элемента.

Пример применения

Теперь давайте рассмотрим применение функции ПРАВСИМВ на конкретном примере.

Для примера возьмем список сотрудников предприятия. В первой колонке этой таблицы находятся фамилии работников вместе с номерами телефонов. Нам нужно эти номера с помощью функции ПРАВСИМВ вынести в отдельный столбец, который так и называется «Номер телефона».

  1. Выделяем первую пустую ячейку столбца «Номер телефона». Щелкаем по пиктограмме «Вставить функцию», которая размещена слева от строки формул.
  2. Переход в Мастер функций в Microsoft Excel

  3. Происходит активация окна Мастера функций. Переходим в категорию «Текстовые». Из представленного списка наименований выделяем название «ПРАВСИМВ». Производим щелчок по кнопке «OK».
  4. Переход в окно аргументов функции ПРАВСИМВ в Microsoft Excel

  5. Открывается окно аргументов оператора ПРАВСИМВ. Оно содержит в себе два поля, которые соответствуют аргументам указанной функции. В поле «Текст» нужно указать ссылку на первую ячейку столбца «Имя», в котором содержится фамилия работника и номер телефона. Адрес можно указать вручную, но мы сделаем по-другому. Устанавливаем курсор в поле «Текст», а затем щелкаем левой кнопкой мыши по той ячейке, координаты которой следует внести. После этого адрес отображается в окошке аргументов.

    В поле «Число знаков» вводим с клавиатуры цифру «5». Именно из пяти знаков состоит номер телефона каждого работника. К тому же, все номера телефонов расположены в конце ячеек. Поэтому, чтобы их вывести отдельно, нам нужно извлечь из этих ячеек именно по пять символов справа.

    После того, как вышеуказанные данные введены, щелкаем по кнопке «OK».

  6. Окно аргументов функции ПРАВСИМВ в Microsoft Excel

  7. После этого действия номер телефона указанного работника извлечен в предварительно выделенную ячейку. Конечно, вводить указанную формулу отдельно для каждого лица в списке очень долгое занятие, но можно сделать быстрее, а именно скопировать её. Для этого ставим курсор в нижний правый угол ячейки, в которой уже содержится формула ПРАВСИМВ. При этом курсор преобразуется в маркер заполнения в виде небольшого крестика. Зажимаем левую кнопку мыши и тянем курсор вниз до самого конца таблицы.
  8. Маркер заполнения в Microsoft Excel

  9. Теперь весь столбец «Номер телефона» заполнен соответствующими значениями из колонки «Имя».
  10. Столбец с номерами телефонов заполнен в Microsoft Excel

  11. Но, если мы попытаемся убрать номера телефонов из столбца «Имя», то они начнут исчезать и из колонки «Номер телефона». Это объясняется тем, что оба эти столбца связаны формулой. Для того, чтобы удалить эту связь, выделяем все содержимое столбца «Номер телефона». Затем кликаем по пиктограмме «Копировать», которая находится на ленте во вкладке «Главная» в группе инструментов «Буфер обмена». Можно также набрать сочетание клавиш Ctrl+C.
  12. Копирование в Microsoft Excel

    Lumpics.ru

  13. Далее, не снимая выделения с вышеуказанной колонки, кликаем по ней правой кнопкой мыши. В контекстном меню в группе «Параметры вставки» выбираем позицию «Значения».
  14. Вставка в Microsoft Excel

  15. После этого все данные в колонке «Номер телефона» будут представлены как самостоятельные символы, а не как результат вычислений формулы. Теперь, при желании, можно удалять номера телефонов из колонки «Имя». Это никак не повлияет на содержимое столбца «Номер телефона».

Формулы преобразованы в текст в Microsoft Excel

Урок: Мастер функций в Excel

Как видим, возможности, которые предоставляет функция ПРАВСИМВ, имеют конкретную практическую пользу. При помощи данного оператора можно выводить в отмеченную область нужное количество символов из указанных ячеек, отсчитывая с конца, то есть, справа. Особенно полезен этот оператор будет в том случае, если нужно извлечь одинаковое число символов с конца в большом диапазоне ячеек. Использование формулы при подобных обстоятельствах позволит значительно сэкономить время пользователя.

Еще статьи по данной теме:

Помогла ли Вам статья?

Одна из самых важных задач при редактировании текстовых строк в Excel – это отделение части строки для получения фрагмента текста.

Примеры основных текстовых функций в Excel с описанием

С помощью текстовых функций: ЛЕВСИМВ, ПРАВСИМВ и ПСТР в процессе офисной работы можно быстро и легко решить такие задачи как:

  • преобразование территориального кода в почтовый код;
  • удаление кода страны или кода оператора сотовой связи в номерах телефонов
  • выборка фрагмента кода сотрудника или должности из номера картотеки в базе данных кадрового отдела;
  • и похожие другие задачи…

Умение быстро решать подобного рода базовые задачи в Excel пригодиться каждому офисному сотруднику.

На рисунке примеров показано, как легко с помощью текстовых функций ЛЕВСИМВ, ПРАВСИМВ и ПСТР реализуются решения выше описанных задач:

Функции ЛЕВСИМВ ПРАВСИМВ и ПСТР.

Функция ЛЕВСИМВ предоставляет возможность пользователю Excel отделить от значения ячейки фрагмент текста или числа с определенным количеством символов от начала исходной строки данных. Данная функция требует указать 2 аргумента:

  1. Текст – исходные данные. Поддерживает и другие типы значений кроме текстовых: число, логическое значение. Не поддерживает значение ошибок, а дату воспринимает как числовое значение.
  2. Количество_знаков – количество символов, взятых от начала, которые следует оставить в фрагменте текста при отделения его от строки. Другими словами, длина вырезанного фрагмента текста с левой стороны исходной строки.



В примере функция =ЛЕВСИМВ(A2 ;5) отделяет 5 первых чисел из текста в ячейке A2.

Текстовая функция ПРАВСИМВ предоставляет возможность отделения определенного количества символов с конца исходной текстовой строки. Фактически данная функция работает обратно пропорционально для ЛЕВСИМВ. И требует заполнить такие же аргументы. Главное отличие — это направление действия функции: с права на лево, то есть начиная отсчет символов с конца.

В данном примере с помощью текстовой функции ПРАВСИМВ отделяется правая часть номеров телефонов сотрудников фирмы. Это 9 последних знаков в конце: =ПРАВСИМВ(A6;9).

Следующая текстовая функция ПСТР более продвинутая. Она позволяет получить фрагмент текста из середины исходной строки. Функция ПСТР требует заполнить 3 аргумента:

  1. Текст – исходные данные (текстовое либо числовое значение).
  2. Начальная_позиция – порядковый номер символа от начала строки с которого следует начать отделение фрагмента текста.
  3. Количество_знаков – количество символов, взятых из середины текста в исходных данных.

В описанном примере функция =ПСТР(A10;4;1) – отделяет только одно числовое значение начинающиеся от 4-го символа с начала исходной строки.

Понравилась статья? Поделить с друзьями:
  • Excel появилось несколько ячеек в ячейке
  • Excel правой кнопку удалить
  • Excel пошаговое вычисление формулы
  • Excel правой кнопку на панель
  • Excel пошаговое выполнение формулы