Найти тему

📌 Как извлечь число из строки в Excel (примеры решения)

Оглавление

Ребята, всем привет! 👋

Продолжаем изучать Excel. В этом уроке я покажу, как извлечь число из строки в Excel.

✍️ Если вы только начинаете осваивать Excel и VBA мы уверены, каждый может найти для себя что-то новое!

✨ А прежде, чем мы начнем 📣 напомню, теперь у нас на канале есть удобный рубрикатор 👉 Быстрый поиск решения. Путеводитель по Excel, а все видео 📽 предыдущих уроков доступны и на YouTube.

Как извлечь число из строки в Excel
Как извлечь число из строки в Excel

📢 Скачать исходник с примерами кода вы можете в конце статьи 🔽

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

⏩ СПОСОБ 1. Как извлечь число из конца текстовой строки

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

Решение будет выглядеть следующим образом:

=--ПРАВСИМВ(A1;ДЛСТР(A1)-МИН(ПОИСК({0;1;2;3;4;5;6;7;8;9};A1&"0123456789"))+1),

где A1 - исходная текстовая строка.

-2

🔔 Другой способ извлечь число из конца строки — использовать такое выражение:

=ПРАВСИМВ(A2;СУММ(ДЛСТР(A2) - ДЛСТР(ПОДСТАВИТЬ(A2; {"0";"1";"2";"3";"4";"5";"6";"7";"8";"9"};""))))

где A2 - исходная текстовая строка.

-3

⚠️ ВАЖНО! Эти формулы предназначены для случая, когда числа находятся только в конце текстовой строки. Если некоторые цифры также находятся в середине или в начале, то ничего не будет работать.

⏩ СПОСОБ 2. Как извлечь число из начала текстовой строки

Решение для извлечения числа будет аналогично описанному выше. С той только разницей, что вы используете функцию ЛЕВСИМВ для извлечения из левой части текста.

Например,

=ЛЕВСИМВ(A3;СУММ(ДЛСТР(A3)-ДЛСТР(ПОДСТАВИТЬ(A3;{"0";"1";"2";"3";"4";"5";"6";"7";"8";"9"};""))))

где A3 - исходная текстовая строка.

-4

⚠️ ВАЖНО! Это решение работает для текстовых выражений, которые содержат числа только в начале. Если некоторые цифры также находятся в середине или в конце строки, формула не будет работать.

🔔 Альтернативным решением в данном случае является применение формулы:

=ЛЕВСИМВ(A4; ПОИСКПОЗ(ЛОЖЬ; ЕЧИСЛО(ПСТР(A4; СТРОКА(ДВССЫЛ( "1:"&ДЛСТР(A4)+1)); 1) *1); 0) -1)

где A4 - исходная текстовая строка.

Это формула массива!!! Вводить используя Ctrl+Shift+Enter
Это формула массива!!! Вводить используя Ctrl+Shift+Enter

⚠️ ЧТО ВАЖНО! Т.к. приведенная выше формула является формулой массива вводить ее нужно используя Ctrl+Shift+Enter

⏩ СПОСОБ 3. Как извлечь число из любой позиции в тексте

Если ваша задача подразумевает извлечение числа из любого места строки, вы можете использовать следующую формулу:

=СУММПРОИЗВ(ПСТР(0&A5; НАИБОЛЬШИЙ(ИНДЕКС(ЕЧИСЛО(--ПСТР(A5; СТРОКА(ДВССЫЛ("1:"&ДЛСТР(A5))); 1)) * СТРОКА(ДВССЫЛ("1:"&ДЛСТР(A5))); 0); СТРОКА(ДВССЫЛ("1:"&ДЛСТР(A5))))+1; 1) * 10^СТРОКА(ДВССЫЛ("1:"&ДЛСТР(A5)))/10)

где A5 - исходная текстовая строка.

-6

🔔 Альтернативным решением, (и на мой взгляд самым привлекательным из рассмотренных) является использование пользовательской функции.

Для ее написания переходим в редактор BVA, где прописываем следующий код:

использование пользовательской функции
использование пользовательской функции

Далее, используем нашу функцию для того чтобы получить число из любой позиции в тексте:

-8

А на этом сегодня все. 👏 Теперь вы знаете как извлечь число из строки в Excel.. Я надеюсь, что вы нашли этот урок полезным.

Продолжение следует...

Подписывайтесь на канал, чтобы не пропустить новые уроки и полезные фишки Excel. Следите за нашими новостями и вы узнаете больше о VBA и Excel в частности.

📝 Нам очень важна Ваша обратная связь. Отзыв по уроку и любые вопросы пишите в комментариях.

💝 А если у Вас пока нет вопросов, но вы дочитали данную статью до конца оставьте в комментариях просто смайлик 😉 (автору будет приятно)

И конечно же, за лайк 👍  и репост 🔁 данного поста благодарочка 💖 и респект 🤝 каждому!

➡️ СКАЧАТЬ ПРИМЕР ФАЙЛА

Подписывайтесь на канал, чтобы не пропустить новые уроки и полезные фишки Excel
Подписывайтесь на канал, чтобы не пропустить новые уроки и полезные фишки Excel