Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Как вытянуть число, находящееся перед определенным текстом - Страница 2 - Мир MS Excel

  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: китин, _Boroda_, DrMini  
Как вытянуть число, находящееся перед определенным текстом
sv2014 Дата: Четверг, 16.03.2017, 09:36 | Сообщение № 21
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 226
Репутация: 61 ±
Замечаний: 0% ±

Excel 2013
DSA, -это пользовательская функция(UDF),хранится,где макросы,в стандартном модуле VBA,в ячейке листа набрать =uuu(),в скобках указать нужную ячейку выбрав,клавиатурой или мышью...
 
Ответить
СообщениеDSA, -это пользовательская функция(UDF),хранится,где макросы,в стандартном модуле VBA,в ячейке листа набрать =uuu(),в скобках указать нужную ячейку выбрав,клавиатурой или мышью...

Автор - sv2014
Дата добавления - 16.03.2017 в 09:36
sv2014 Дата: Четверг, 16.03.2017, 09:55 | Сообщение № 22
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 226
Репутация: 61 ±
Замечаний: 0% ±

Excel 2013
DSA, добавил макрос

[vba]
Код
Sub test()
     Dim z, z1, t$, i&: z = Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row).Value
  With CreateObject("VBScript.RegExp"): .Pattern = "\d+ ?(?=шт)"
    For i = 1 To UBound(z): t = z(i, 1)
If .test(t) Then z(i, 1) = CInt(.Execute(t)(0)) Else z(i, 1) = ""
   Next
   Range("D1").Resize(UBound(z), 1).Value = z
   End With
End Sub
[/vba]


Сообщение отредактировал sv2014 - Четверг, 16.03.2017, 09:56
 
Ответить
СообщениеDSA, добавил макрос

[vba]
Код
Sub test()
     Dim z, z1, t$, i&: z = Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row).Value
  With CreateObject("VBScript.RegExp"): .Pattern = "\d+ ?(?=шт)"
    For i = 1 To UBound(z): t = z(i, 1)
If .test(t) Then z(i, 1) = CInt(.Execute(t)(0)) Else z(i, 1) = ""
   Next
   Range("D1").Resize(UBound(z), 1).Value = z
   End With
End Sub
[/vba]

Автор - sv2014
Дата добавления - 16.03.2017 в 09:55
AlexM Дата: Четверг, 16.03.2017, 10:12 | Сообщение № 23
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
Код
=--ПРАВБ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ЛЕВБ(A1;ПОИСК("?шт.";A1)));" ";ПОВТОР(" ";99));99)
К сообщению приложен файл: 333222_01.xls (28.0 Kb)



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
Сообщение
Код
=--ПРАВБ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ЛЕВБ(A1;ПОИСК("?шт.";A1)));" ";ПОВТОР(" ";99));99)

Автор - AlexM
Дата добавления - 16.03.2017 в 10:12
DSA Дата: Четверг, 16.03.2017, 11:02 | Сообщение № 24
Группа: Пользователи
Ранг: Новичок
Сообщений: 28
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
EXEL БЕЗГРАНИЧЕН!!!))) СПАСИБО вот что у меня получилось
Код
=ЕСЛИ(ЕОШ(ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);4)*1>=0);ЕСЛИ(ЕОШ(ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);3)*1>=0);ЕСЛИ(ЕОШ(ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);2)*1>=0);ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);1);ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);2));ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);3));ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);4))*1


МЕГАФОРМУЛА
 
Ответить
СообщениеEXEL БЕЗГРАНИЧЕН!!!))) СПАСИБО вот что у меня получилось
Код
=ЕСЛИ(ЕОШ(ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);4)*1>=0);ЕСЛИ(ЕОШ(ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);3)*1>=0);ЕСЛИ(ЕОШ(ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);2)*1>=0);ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);1);ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);2));ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);3));ПРАВСИМВ(ПСТР(A3;ПОИСК("шт";A3;1)-4;4);4))*1


МЕГАФОРМУЛА

Автор - DSA
Дата добавления - 16.03.2017 в 11:02
AlexM Дата: Четверг, 16.03.2017, 11:27 | Сообщение № 25
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
DSA, На мегаформулу не тянет. На форуме встречались и побольше. :)



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.


Сообщение отредактировал AlexM - Четверг, 16.03.2017, 11:28
 
Ответить
СообщениеDSA, На мегаформулу не тянет. На форуме встречались и побольше. :)

Автор - AlexM
Дата добавления - 16.03.2017 в 11:27
DSA Дата: Четверг, 16.03.2017, 11:58 | Сообщение № 26
Группа: Пользователи
Ранг: Новичок
Сообщений: 28
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
AlexM, Для меня МЕГА :D :D :D
 
Ответить
СообщениеAlexM, Для меня МЕГА :D :D :D

Автор - DSA
Дата добавления - 16.03.2017 в 11:58
AlexM Дата: Пятница, 17.03.2017, 19:08 | Сообщение № 27
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
вот что у меня получилось
А почему вас не устроила формула в 4 раза короче?



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
Сообщение
вот что у меня получилось
А почему вас не устроила формула в 4 раза короче?

Автор - AlexM
Дата добавления - 17.03.2017 в 19:08
bmv98rus Дата: Пятница, 17.03.2017, 20:11 | Сообщение № 28
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4147
Репутация: 772 ±
Замечаний: 0% ±

Excel 2013/2016
DSA,
"Мега" это скорее антоним слову длинный, и вот как раз AlexM, их вырисовывает на слову, не всегда понятно как получается, но работает. А вот "монстр" -да, при том для каждого монстр свой. Кому то и ВПР уже монстр.


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Пятница, 17.03.2017, 20:11
 
Ответить
СообщениеDSA,
"Мега" это скорее антоним слову длинный, и вот как раз AlexM, их вырисовывает на слову, не всегда понятно как получается, но работает. А вот "монстр" -да, при том для каждого монстр свой. Кому то и ВПР уже монстр.

Автор - bmv98rus
Дата добавления - 17.03.2017 в 20:11
DSA Дата: Воскресенье, 19.03.2017, 17:30 | Сообщение № 29
Группа: Пользователи
Ранг: Новичок
Сообщений: 28
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
AlexM, Понравилась конечно, Ваша формула работает хорошо и более понятна, это мы пока никто не отвечал сами придумывали, срочно было нужно как всегда))) Еще раз большое спасибо...
 
Ответить
СообщениеAlexM, Понравилась конечно, Ваша формула работает хорошо и более понятна, это мы пока никто не отвечал сами придумывали, срочно было нужно как всегда))) Еще раз большое спасибо...

Автор - DSA
Дата добавления - 19.03.2017 в 17:30
Светлый Дата: Воскресенье, 19.03.2017, 22:53 | Сообщение № 30
Группа: Друзья
Ранг: Старожил
Сообщений: 1868
Репутация: 536 ±
Замечаний: 0% ±

Excel 2013, 2016
Ещё вариант массивной (Ctrl+Shift+Enter) формулы:
Код
=МАКС(ЕСЛИОШИБКА(--ПСТР(A1;ПОИСК("шт";A1)-СТРОКА($1:$6);СТРОКА($1:$6));0))


Программировать проще, чем писать стихи.
 
Ответить
СообщениеЕщё вариант массивной (Ctrl+Shift+Enter) формулы:
Код
=МАКС(ЕСЛИОШИБКА(--ПСТР(A1;ПОИСК("шт";A1)-СТРОКА($1:$6);СТРОКА($1:$6));0))

Автор - Светлый
Дата добавления - 19.03.2017 в 22:53
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!