Страницы: 1
RSS
Нахождение определенного символа в ячейке
 
Здравствуйте гуру!
Никак не пойму как совместить две функции (ЛЕВСИМВ и ПРАВСИМВ) чтобы вытащить именно цифру без процентов.
Пример с попытками прилагаю. Уверен, многие знаю как, но буду признателен, если кто-нибудь ОБЪЯСНИТ - что, как и почему.
Спасибо
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
Как вариант - текст по столбам, по пробелам, пропускаем первое и последнее поле. Если надо без знака %, то умножаем на 100... ;)
Изменено: Z - 23.09.2017 18:51:23
"Ctrl+S" - достойное завершение ваших гениальных мыслей!.. ;)
 
Цитата
Z написал:
пропускаем первое и последнее поле
... а как пропустить первое и последнее поле?
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
Цитата
Ronin71 написал: а как
?!
"Ctrl+S" - достойное завершение ваших гениальных мыслей!.. ;)
 
Как ни крути, все равно добавляются 2 лишних столбца. А какой-нибудь формулой можно вытащить именно цифру, чтобы сослаться на эту цифру при последующих расчетах?
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
Z, да, но тогда удаляется остальная информация из ячейки...
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
А поиском воспользоваться никак? Неоднократно обсуждалось:
Код
=ПСТР(ЛЕВБ(A3;ПОИСК("%";A3)-1);ПОИСК(" ";A3)+1;5)
 
Спасибо. Немного подкорректировал таблицу, как выглядит в оригинале, подставил формулу, которую предложил Влад, протянул ее до конца. Теперь не совсем то, что ожидалось. И значение возвращается в текстовом формате...
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
Цитата
вытащить именно цифру без процентов.
UDF
Код
Function iPercent(cell$) As Double
 With CreateObject("VBScript.RegExp")
     .Global = True
     .IgnoreCase = True
     .Pattern = "\d+(?=%)"
     iPercent = .Execute(cell)(0)
 End With
End Function
 
Ну тогда еще варианты. Второй предполагает, что цифр перед % всегда 2.
 
Влад,
Цитата
Влад написал:
предполагает, что цифр перед % всегда 2
это как раз то, ЧТО НАДО!!! Спасибо ОГРОМНОЕ! А теперь не могли бы Вы мне объяснить что к чему и почему :)
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
Разбирайте формулу сами, что непонятно - спрашивайте.
 
Странно, что мой Excel даже не предлагает ни ЛЕВБ, ни ПРАВБ. Когда начинаю вводить... и это всё, что он предлагает... Есть варианты, почему?  
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
Потому что функции *Б - для китайского языка)
 
... т.е. на русском использовать - не судьба?
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
А использовать ЛЕВСИМВ()?
 
*Б просто не отображаются при выборе, но работают так же как обычные, так что использовать можно спокойно.
 
Цитата
Влад написал:
*Б просто не отображаются при выборе
...а откуда такие неведаные функции берутся, которые не отображаются при выборе, но работают так же как обычные? Кто их придумал, но не включил в выбор?
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
Юрий М, а есть альтернатива использовать "=--ЕСЛИОШИБКА(ПРАВБ(ЛЕВБ(A3;ПОИСК("%";A3)-1);2)" без использования ЛЕВБ, ПРАВБ?
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
Цитата
Ronin71 написал:
Кто их придумал, но не включил в выбор?
Все вопросы - к мелкомягким) ЛЕВСИМВ=ЛЕВБ, ПРАВСИМВ=ПРАВБ, просто пишется короче.
 
=--ПСТР(A2&0;ПОИСК("??%";A2&"00%");2)
Алексей М.
 
АlехМ, тоже здОрово!
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
Ronin71, Решение от Mr АlехМ, не здорово...Это гениально!!!
И что самое главное- такое простое, я бы даже сказал инженерное
Низкий Вам поклон Mr AlexM за решение, и Вам Ronin71 за тему
Изменено: Akropochev - 23.09.2017 23:47:05
 
АlехМ, если меньше 10%, результат будет в долях, т.к. вытянется и знак %. Лучше так:
=--ПСТР(A2&0;ПОИСК("%";A2&"00%")-2;2)
Для отображения в долях последнюю 2 заменить на 3
 
vikttur, согласен. При написании формулы учел следующее:
Цитата
Влад написал:
предполагает, что цифр перед % всегда 2
Цитата
Ronin71 написал:
это как раз то, ЧТО НАДО!!!
Алексей М.
 
Цитата
АlехМ написал:
При написании формулы учел следующее:
... в моём случае, да, двух цифр перед "%" - достаточно. Но, как многие знают, случаи бывают разные. Тогда =--ПСТР(A2&0;ПОИСК("??%";A2&"00%");2) последняя "2" меняется на то кол-во знаков, которое нужно? Т.е. на 1% меняется на 1 и на 138% меняется на 3? Я правильно понимаю?
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
Ronin71,
А, UDF, вы попробовали?
 
Цитата
Влад написал: цифр перед % всегда 2
Цитата
Ronin71 написал: это как раз то, ЧТО НАДО!!!
Ну да... И тут появляется 138% - два знака?


Цитата
Ronin71 написал: Я правильно понимаю?
Проверить времени нет?
А потом, когда не получилось, показать пример с данными, которых не показали раньше.
Страницы: 1
Наверх