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

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

Хитрости »

24 Июль 2013              94417 просмотров


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

Получить слово до первого пробела достаточно просто:
=ПСТР(A1;1;НАЙТИ(» «;A1)-1)
=MID(A1,1,FIND(» «,A1)-1)
Но куда чаще сложности возникают с получением слова(символа), находящегося на определенной позиции между пробелом. Я беру в качестве примера пробел, но на самом деле это может быть абсолютно любой символ. Например, для получения второго слова(т.е. между первым и вторым пробелом), можно составить такую формулу:
=ПСТР(A1;НАЙТИ(» «;A1)+1;НАЙТИ(» «;A1;НАЙТИ(» «;A1)+1)-НАЙТИ(» «;A1)-1)
=MID(A1,FIND(» «,A1)+1,FIND(» «,A1,FIND(» «,A1)+1)-FIND(» «,A1)-1)
На мой взгляд, выглядит несколько закручено, хотя все не так уж сложно:

  • НАЙТИ(» «;A1)+1 — ищем позицию первого пробела в ячейке A1
  • НАЙТИ(» «;A1;НАЙТИ(» «;A1)+1) — ищем позицию второго пробела и затем из этой позиции вычитаем позицию первого пробела(-НАЙТИ(» «;A1))

Но есть проблема — если второго пробела нет, то формула выдаст ошибку #ЗНАЧ!(#VALUE!). Тогда придется еще и проверку на ошибку делать, что явно не добавит формуле элегантности. А если надо не второе слово, а третье, пятое? Поэтому я предпочитаю использовать такую формулу:
=ПОДСТАВИТЬ(ПРАВСИМВ(ПСТР(» «&ПОДСТАВИТЬ(A1;» «;ПОВТОР(» «;999));1;999*2);999);» «;»»)
=SUBSTITUTE(RIGHT(MID(» «&SUBSTITUTE(A1,» «,REPT(» «,999)),1,999*2),999),» «,»»)
На первый взгляд куда кошмарнее, чем первая. Но у неё есть ряд преимуществ:
— она не нуждается в проверке на отсутствие пробелов
— изменением одного числа можно получить не второе, а 3-е, 4-е и т.д. слово.

Разберем основные моменты использования этой формулы. Во-первых: формула вытаскивает второе слово от начала строки. Во-вторых: чтобы получить первое слово от начала строки, нужно в блоке 999*2 заменить 2 на 1:

=ПОДСТАВИТЬ(ПРАВСИМВ(ПСТР(» «&ПОДСТАВИТЬ(A1;» «;ПОВТОР(» «;999));1;999*1);999);» «;»»)
=SUBSTITUTE(RIGHT(MID(» «&SUBSTITUTE(A1,» «,REPT(» «,999)),1,999*1),999),» «,»»)

Чтобы получить 5-е слово — меняем на 5:

=ПОДСТАВИТЬ(ПРАВСИМВ(ПСТР(» «&ПОДСТАВИТЬ(A1;» «;ПОВТОР(» «;999));1;999*5);999);» «;»»)
=SUBSTITUTE(RIGHT(MID(» «&SUBSTITUTE(A1,» «,REPT(» «,999)),1,999*5),999),» «,»»)

Т.е. число — это позиция слова(или слов) между пробелами. А что будет, если мы укажем число больше, чем есть пробелов в строке?

А это как раз ТО, К ЧЕМУ ШЛИ — СЛОВО ПОСЛЕ ПОСЛЕДНЕГО ПРОБЕЛА

Если вдруг число будет больше, чем есть пробелов в строке — то мы получим слово после последнего пробела (т.е. первое слово с конца строки). Это значит, что если указать, например, *999 — в большинстве случаев получим как раз последнее слово.

Как это работает:
для примера возьмем текст «мама мыла раму» и формулу по получению второго слова от начала:
=ПОДСТАВИТЬ(ПРАВСИМВ(ПСТР(» «&ПОДСТАВИТЬ(A1;» «;ПОВТОР(» «;999));1;999*2);999);» «;»»)
=SUBSTITUTE(RIGHT(MID(» «&SUBSTITUTE(A1,» «,REPT(» «,999)),1,999*2),999),» «,»»)

  • Сначала при помощи функции ПОДСТАВИТЬ(SUBSTITUTE) мы заменяем все пробелы в тексте на 999 пробелов(999 получаем при помощи функции ПОВТОР(REPT). Число может быть и меньше 999, но не должно быть меньше длины исходной строки. В итоге мы получим очень длинную строку, в которой каждое слово будет отделено от другого 999 пробелами. Что-то вроде такого(пробелов я поставил меньше, конечно):
    «мама____________________________мыла____________________________раму»
  • Далее при помощи функции ПСТР(MID) мы берем все слова от начала строки, до символа на позиции 999*2. Т.е. из текста выше мы получим слова «мама» и «мыла» и по 999 символов после каждого:
    «мама____________________________мыла____________________________»
  • Затем при помощи функции ПРАВСИМВ(RIGHT) получаем 999 символов справа от строки. Т.е. только наше слово и куча пробелов после него
    «мыла____________________________»
  • И напоследок та же функция ПОДСТАВИТЬ(SUBSTITUTE) убирает более не нужные нам пробелы, заменяя их все на пустую строку — «».

 
Вроде бы достигли того, что нам нужно было. Но вдруг необходимо получить второе слово с конца строки? А если у нас этих слов десятки? Можно использовать некую модификацию приведенной выше формулы, но которая как раз возвращает слово с конца строки:
=ПОДСТАВИТЬ(ПСТР(ПРАВСИМВ(» «&ПОДСТАВИТЬ(A1;» «;ПОВТОР(» «;999));999*1);1;999);» «;»»)
=SUBSTITUTE(MID(RIGHT(» «&SUBSTITUTE(A1,» «,REPT(» «,999)),999*1),1,999),» «,»»)
Принцип тот же: если в блоке 999*1 заменить 1 на 5, то получим 5-е слово с конца строки.
Если необходимо выдергивать слова именно по пробелам, то лучше дополнить еще одной функцией — СЖПРОБЕЛЫ(TRIM), чтобы отсечь лишние пробелы в начале и в конце строки и оставить только одиночные пробелы между словами:

  • слова от начала строки:
    =ПОДСТАВИТЬ(ПРАВСИМВ(ПСТР(» «&ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A1);» «;ПОВТОР(» «;999));1;999*1);999);» «;»»)
    =SUBSTITUTE(RIGHT(MID(» «&SUBSTITUTE(TRIM(A1),» «,REPT(» «,999)),1,999*1),999),» «,»»)
  • слова с конца строки:
    =ПОДСТАВИТЬ(ПСТР(ПРАВСИМВ(» «&ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A1);» «;ПОВТОР(» «;999));999*1);1;999);» «;»»)
    =SUBSTITUTE(MID(RIGHT(» «&SUBSTITUTE(TRIM(A1),» «,REPT(» «,999)),999*1),1,999),» «,»»)
  • «вытянуть» определенное количество слов:
    =СЖПРОБЕЛЫ(ПСТР(ПРАВСИМВ(» «&ПОДСТАВИТЬ(A1;» «;ПОВТОР(» «;999));999*3);1;999*2))
    =TRIM(MID(RIGHT(» «&SUBSTITUTE(A1,» «,REPT(» «,999)),999*3),1,999*2))
    3 — третье слово с конца строки.
    2 — количество слов.
  • Как видите — хоть формула и выглядит не так-то просто — она весьма универсальная: может и определенное слово вытащить, и к тому же еще и количество извлекаемых слов можно указать.

     
    Остается еще добавить, что вместо пробелов могут быть и другие символы. Например, очень часто встречается ситуация, когда надо из текста получить не одно слово в конкретной позиции, а конкретную строку из текста, разнесенного в одной ячейке на строки:
    Разбиение на строки
    Тогда для получения второй строки(

    ТЦ Таганка

    и

    ТЦ Опус

    ) можно применить такую формулу:

    =ПОДСТАВИТЬ(ПРАВСИМВ(ПСТР(СИМВОЛ(10)&ПОДСТАВИТЬ(C2;СИМВОЛ(10);ПОВТОР(СИМВОЛ(10);999));1;999*2);999);СИМВОЛ(10);»»)
    СИМВОЛ(10) здесь означает перенос строки. Обычно эти переносы делаются с клавиатуры. Входим в режим редактирования ячейки, ставим курсор в нужное место строки и нажимаем Alt+Enter.

    я для получения месяцев(

    Август 2015 г.

    и

    Сентябрь 2015 г.

    ) — такую:

    =ПОДСТАВИТЬ(ПСТР(ПРАВСИМВ(«/»&ПОДСТАВИТЬ(C2;»/»;ПОВТОР(«/»;999));999*1);1;999);»/»;»»)

    В этой формуле в качестве разделителя используется слеш «/».


    Разбор основных параметров формулы для применения в своих файлах

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

    =ПОДСТАВИТЬ(ПСТР(ПРАВСИМВ(«/»&ПОДСТАВИТЬ(C2;»/»;ПОВТОР(«/»;999));999*1);1;999);»/»;»»)

    1. C2 — ячейка с текстом, последнее слово из которого надо извлечь.
    2. «/» — разделитель слов. Если для разделения слов используется не слеш, а запятая или точка — то во всей формуле, где встречается этот символ надо заменить его на нужный.
      Если лень прописывать этот символ внутри формулы несколько раз, его можно записать в отдельную ячейку(скажем, G1) и в формуле указать ссылку уже на эту ячейку:
      =ПОДСТАВИТЬ(ПСТР(ПРАВСИМВ(G1&ПОДСТАВИТЬ(C2;G1;ПОВТОР(G1;999));999*1);1;999);G1;»»)
      Теперь для изменения символа надо будет изменить его один раз в ячейке G1 и формула «вытащит» нужное слово/строку, опираясь именно на этот символ.
    3. *1 — число 1 — позиция слова с конца строки, которое необходимо «достать». 1 — первое с конца(т.е. последнее), 2 — предпоследнее и т.д.

    Зная эти основные моменты достаточно будет в своем файле просто скопировать формулу выше и подставить в неё ссылку на нужную ячейку и указать требуемый разделитель.

    Скачать пример:

      Слово после последнего пробела.xls (29,5 KiB, 3 779 скачиваний)


    Статья помогла? Поделись ссылкой с друзьями!

      Плейлист   Видеоуроки


    Поиск по меткам

    

    Access
    apple watch
    Multex
    Power Query и Power BI
    VBA управление кодами
    Бесплатные надстройки
    Дата и время
    Записки
    ИП
    Надстройки
    Печать
    Политика Конфиденциальности
    Почта
    Программы
    Работа с приложениями
    Разработка приложений
    Росстат
    Тренинги и вебинары
    Финансовые
    Форматирование
    Функции Excel
    акции MulTEx
    ссылки
    статистика

    Формулы в этой статье полезны для извлечения слов из текста, содержащегося в ячейке. Например, вы можете создать формулу для извлечения первого слова в предложении.

    Извлечение первого слова из строки

    Чтобы извлечь первое слово из строки, формула должна найти позицию первого символа пробела, а затем использовать эту информацию в качестве аргумента для функции ЛЕВСИМВ. Следующая формула делает это: =ЛЕВСИМВ(A1;НАЙТИ(" ";A1)-1).

    Эта формула возвращает весь текст до первого пробела в ячейке A1. Однако у нее есть небольшой недостаток: она возвращает ошибку, если текст в ячейке А1 не содержит пробелов, потому что состоит из одного слова. Несколько более сложная формула решает проблему с помощью новой функции ЕСЛИОШИБКА, отображая все содержимое ячейки, если произошла ошибка:
    =ЕСЛИОШИБКА(ЛЕВСИМВ(A1;НАЙТИ(" ";A1)-1);A1).

    Если вам нужно, чтобы формула была совместима с более ранними версиями Excel, вы не можете использовать ЕСЛИОШИБКА. В таком случае придется обойтись функцией ЕСЛИ и функцией ЕОШ для проверки на ошибку:
    =ЕСЛИ(ЕОШ(НАЙТИ(" ";A1));A1;ЛЕВСИМВ(A1;НАЙТИ(" ";A1)-1))

    Извлечение последнего слова строки

    Извлечение последнего слова строки — более сложная задача, поскольку функция НАЙТИ работает только слева направо. Таким образом, проблема состоит в поиске последнего символа пробела. Следующая формула, однако, решает эту проблему. Она возвращает последнее слово строки (весь текст, следующий за последним символом пробела):
    =ПРАВСИМВ(A1;ДЛСТР(A1)-НАЙТИ("*";ПОДСТАВИТЬ(A1;" ";"*";ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;"";"")))))

    Но у этой формулы есть такой же недостаток, как и у первой формулы из предыдущего раздела: она вернет ошибку, если строка не содержит по крайней мере один пробел. Решение заключается в использовании функции ЕСЛИОШИБКА и возврате всего содержимого ячейки А1, если возникает ошибка:
    =ЕСЛИОШИБКА(ПРАВСИМВ(A1;ДЛСТР(A1)-НАЙТИ("*";ПОДСТАВИТЬ(A1;" ";"*";ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;" ";"")))));A1)

    Следующая формула совместима со всеми версиями Excel:
    =ЕСЛИ(ЕОШ(НАЙТИ(" ";A1));A1;ПРАВСИМВ(A1;ДЛСТР(A1)-НАЙТИ("*";ПОДСТАВИТЬ(A1;"";"*";ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;" ";""))))))

    Извлечение всего, кроме первого слова строки

    Следующая формула возвращает содержимое ячейки А1, за исключением первого слова:
    =ПРАВСИМВ(A1;ДЛСТР(A1)-НАЙТИ(" ":A1;1)).
    Если ячейка А1 содержит текст 2008 Operating Budget, то формула вернет Operating Budget.

    Формула возвращает ошибку, если ячейка содержит только одно слово. Следующая версия формулы использует функцию ЕСЛИОШИБКА, чтобы можно было избежать ошибки; формула возвращает пустую строку, если ячейка не содержит более одного слова:
    =ЕСЛИОШИБКА(ПРАВСИМВ(A1;ДЛСТР(A1)-НАЙТИ(" ";A1;1));"")

    А эта версия совместима со всеми версиями Excel:
    =ЕСЛИ(ЕОШ(НАЙТИ(" ";A1));"";ПРАВСИМВ(A1;ДЛСТР(A1)-НАЙТИ(" ";A1;1)))

     

    shooombj

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

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

    Здравствуйте! Подскажите, пожалуйста, как вынести в соседний столбец символы, которые идут до первого пробела? Файл прилагаю. Операция необходима, чтобы заполнить столбец «Артикул».  

      <EM><STRONG>Файл удален</STRONG> — велик размер — [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>

     

    Serge

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

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

    Здравствуйте.  
    Либо:  
    =ЛЕВСИМВ(C6;НАЙТИ(» «;C6))  
    либо макросом.

     

    shooombj

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

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

     

    Serge

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

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

    А как в 2010 — м посмотреть размер файла не скачивая его? Я видимо косякнул, но даже проверить не могу сколько он весит не сохраняя его :)

     

    vikttur

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

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

    Автору срочно необходимо посетить страничку  

    http://www.planetaexcel.ru/forum.php?thread_id=8735  

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

     

    Serge

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

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

    {quote}{login=vikttur}{date=18.09.2010 10:01}{thema=}{post}  
    Сергей, я вижу размер файла еще до скачивания, когда Опера предлагает варианты дальнейших действий.{/post}{/quote}А я нет!!! Дома у меня мозилла и 2010 офис, и когда я кликаю по вложению, то оно тупо скачивается, независимо от размера :(((  
    Мне это не нравится. Хотя трафик не важен (у меня дома безлимит) но я не хочу помогать нарушителям… Вот я и спрашиваю: Как размер файла увидеть раньше чем его скачал?

     

    Serge

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

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

    {quote}{login=Serge 007}{date=18.09.2010 10:06}{thema=Re: }{post}{quote}{login=vikttur}{date=18.09.2010 10:01}{thema=}{post}  
    Сергей, я вижу размер файла еще до скачивания, когда Опера предлагает варианты дальнейших действий.{/post}{/quote}А я нет!!! Дома у меня мозилла и 2010 офис, и когда я кликаю по вложению, то оно тупо скачивается, независимо от размера :(((  
    Мне это не нравится. Хотя трафик не важен (у меня дома безлимит) но я не хочу помогать нарушителям… Вот я и спрашиваю: Как размер файла увидеть раньше чем его скачал?{/post}{/quote}В 2003 это просто, там делать даже ничего не надо, это по умолчанию…

     

    Serge

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

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

    {quote}{login=The_Prist}{date=18.09.2010 10:08}{thema=Re: Re: }{post}{quote}{login=Serge 007}{date=18.09.2010 10:06}{thema=Re: }{post}Как размер файла увидеть раньше чем его скачал?{/post}{/quote}В Мозиле никак. Только после. Инструменты-Загрузки. Там показывается в окошке размер скачанного файла.{/post}{/quote}Ctrщё поэксперементирую,l+J? Оно мне пустое окно даёт :(((  
    Ща ещё поэксперементирую, спасибо Дим!

     

    Serge

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

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

    {quote}{login=Serge 007}{date=18.09.2010 10:10}{thema=Re: Re: Re: }{post}}Ctrщё поэксперементирую,l+J? Оно мне пустое окно даёт :(((  
    Ща ещё поэксперементирую, спасибо Дим!{/post}{/quote}Чё-то фигня какая-то, чя писал не это, и вроде не цитировал — часть правильно — часть нет :(((

     

    vikttur

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

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

    Это твои вирусы (все еще болеешь?) на клаву упали :)

     

    vikttur

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

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

    shooombj уже поспасибился и ушел.  
    Не брать пробел:  
    =ЛЕВСИМВ(C6;НАЙТИ(» «;C6)-1)

     

    Serge

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

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

    {quote}{login=vikttur}{date=18.09.2010 10:21}{thema=}{post}все еще болеешь?) на клаву упали :){/post}{/quote}Не думаю )))

     

    Юрий М

    Модератор

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

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

    Серж, поставь Оперу и не мучайся

     

    Serge

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

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

    {quote}{login=Юрий М}{date=19.09.2010 10:15}{thema=Re: Re: }{post}Серж, поставь Оперу и не мучайся{/post}{/quote}Юрий, спасибо. И Опера и Ишак есть, но мне больше годзилла нравится и по-умолчанию открывается она…

     

    Юрий М

    Модератор

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

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

    Тогда не спрашивай больше про предварительный просмотр размера файла :-)  
    P.S. Пусть дефолтно годзилла, а Планету открывай в Опере.

     

    kim

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

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

    Игорь

    Я тоже не вижу размер предварительно. Опера 10.53

     

    Serge

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

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

    {quote}{login=Юрий М}{date=19.09.2010 11:46}{thema=}{post}Тогда не спрашивай больше про предварительный просмотр размера файла :-)  
    P.S. Пусть дефолтно годзилла, а Планету открывай в Опере.{/post}{/quote}Ну дык я не только на Планете… Думал что можно как-то :(((  

      ЗЫ А что, может можно установить каким браузером какой сайт открывать?

     

    Юрий М

    Модератор

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

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

    Я просто сделал для Оперы домашней страницей Планету.

     

    vikttur

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

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

    {quote}{login=kim}{date=19.09.2010 11:58}{thema=}{post}Я тоже не вижу размер предварительно. Опера 10.53{/post}{/quote}  
    У меня Опера 10.61  
    ЛКМ, открывается окошко «Загрузка файла — Открыть, Сохранить, Отмена, Справка».  
    В верхней строке имя и размер файла.

     

    Serge

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

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

    {quote}{login=Юрий М}{date=19.09.2010 12:00}{thema=}{post}Я просто сделал для Оперы домашней страницей Планету.{/post}{/quote}Спс, ща поколдую :-)

     

    Юрий М

    Модератор

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

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

    {quote}{login=vikttur}{date=19.09.2010 12:04}{thema=Re: }{post}{quote}{login=kim}{date=19.09.2010 11:58}{thema=}{post}Я тоже не вижу размер предварительно. Опера 10.53{/post}{/quote}У меня Опера 10.61  
    ЛКМ, открывается окошко «Загрузка файла — Открыть, Сохранить, Отмена, Справка».  
    В верхней строке имя и размер файла.{/post}{/quote}  
    Аналогично.

     

    {quote}{login=Serge 007}{date=19.09.2010 11:59}{thema=Re: }{post}{quote}{login=Юрий М}{date=19.09.2010 11:46}{thema=}{post}Тогда не спрашивай больше про предварительный просмотр размера файла :-)  
    P.S. Пусть дефолтно годзилла, а Планету открывай в Опере.{/post}{/quote}  
    ЗЫ А что, может можно установить каким браузером какой сайт открывать?{/post}{/quote}  
    Можно — каким движком, если… установить комбайн Lunascape6 — в нем три-в-одном. По-моему появился и у других выбор.  
    Z.  
    19256

     

    kim

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

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

    Игорь

    Не, у меня такого окошка нет, надо бы поколдовать с настройками…

     

    Diana

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

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

    {quote}{login=Serge 007}{date=19.09.2010 11:59}{thema=Re: }{post}{quote}{login=Юрий М}{date=19.09.2010 11:46}{thema=}{post}Тогда не спрашивай больше про предварительный просмотр размера файла :-)  
    P.S. Пусть дефолтно годзилла, а Планету открывай в Опере.{/post}{/quote}Ну дык я не только на Планете… Думал что можно как-то :(((  

      ЗЫ А что, может можно установить каким браузером какой сайт открывать?{/post}{/quote}  

      Можно… Есть скрипт, который фильтрует URL адреса. Т.е. если Вы работаете, например, в Google Chrom, нажимаете в яндексе на

    www.planetaexcel.ru

    (или в закладке или где-то), открывается другой браузер.  
    Не уверена, что он у меня с собой на буке есть, дома точно есть ткой скрипт.

     

    Serge

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

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

    {quote}{login=Diana Tailor}{date=19.09.2010 12:12}{thema=Re: Re: }{post}  
    Можно… Есть скрипт, который фильтрует URL адреса. Т.е. если Вы работаете, например, в Google Chrom, нажимаете в яндексе на

    www.planetaexcel.ru

    (или в закладке или где-то), открывается другой браузер.  
    Не уверена, что он у меня с собой на буке есть, дома точно есть ткой скрипт.{/post}{/quote}Буду признателен. В размерах разумного :)  
    Это мне больше всего подходит.  

      ЗЫ Z спасибо, но это я не осилю :(

     

    Serge

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

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

    {quote}{login=Diana Tailor}{date=19.09.2010 12:12}{thema=Re: Re: }{post}  
    Можно… Есть скрипт, который фильтрует URL адреса. Т.е. если Вы работаете, например, в Google Chrom, нажимаете в яндексе на

    www.planetaexcel.ru

    (или в закладке или где-то), открывается другой браузер.  
    Не уверена, что он у меня с собой на буке есть, дома точно есть ткой скрипт.{/post}{/quote}Буду признателен. В размерах разумного :)  
    Это мне больше всего подходит.  

      ЗЫ Z спасибо, но это я не осилю :(

     

    Diana

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

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

    Сергей, насколько я поняла, у Вас Мозилла.  
    тогда вот такая штучка подойдет  

    https://addons.mozilla.org/ru/firefox/addon/1429/  

      к сожалению с собой на буке скриптика не оказалось :(

     

    Serge

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

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

    {quote}{login=Diana Tailor}{date=19.09.2010 12:27}{thema=}{post}Сергей, насколько я поняла, у Вас Мозилла.  
    тогда вот такая штучка подойдет  

    https://addons.mozilla.org/ru/firefox/addon/1429/  

      к сожалению с собой на буке скриптика не оказалось :({/post}{/quote}Ага, смотрю. СПС!

     

    Diana

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

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

    {quote}{login=Diana Tailor}{date=19.09.2010 12:27}{thema=}{post}Сергей, насколько я поняла, у Вас Мозилла.  
    тогда вот такая штучка подойдет  

    https://addons.mozilla.org/ru/firefox/addon/1429/  

      к сожалению с собой на буке скриптика не оказалось :({/post}{/quote}  

      либо OperaView

     

    shooombj

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

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

    #30

    19.09.2010 19:40:25

    {quote}{login=vikttur}{date=18.09.2010 10:23}{thema=}{post}shooombj уже поспасибился и ушел.  
    Не брать пробел:  
    =ЛЕВСИМВ(C6;НАЙТИ(» «;C6)-1){/post}{/quote}  

      Я тут) Спасибо еще раз!

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