Как вытянуть число, находящееся перед определенным текстом
sv2014
Дата: Четверг, 16.03.2017, 09:36 |
Сообщение № 21
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 226
Репутация:
61
±
Замечаний:
0% ±
Excel 2013
DSA , -это пользовательская функция(UDF),хранится,где макросы,в стандартном модуле VBA,в ячейке листа набрать =uuu(),в скобках указать нужную ячейку выбрав,клавиатурой или мышью...
DSA , -это пользовательская функция(UDF),хранится,где макросы,в стандартном модуле VBA,в ячейке листа набрать =uuu(),в скобках указать нужную ячейку выбрав,клавиатурой или мышью...sv2014
Ответить
Сообщение 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]
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
Сообщение отредактировал 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)
Код
=--ПРАВБ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ЛЕВБ(A1;ПОИСК("?шт.";A1)));" ";ПОВТОР(" ";99));99)
AlexM
Номер мобильного модема (без голосовой связи) 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
Ответить
Сообщение 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 , На мегаформулу не тянет. На форуме встречались и побольше.
DSA , На мегаформулу не тянет. На форуме встречались и побольше. AlexM
Номер мобильного модема (без голосовой связи) 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, Для меня МЕГА Автор - DSA Дата добавления - 16.03.2017 в 11:58
AlexM
Дата: Пятница, 17.03.2017, 19:08 |
Сообщение № 27
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация:
1130
±
Замечаний:
0% ±
Excel 2003
вот что у меня получилось
А почему вас не устроила формула в 4 раза короче?
вот что у меня получилось
А почему вас не устроила формула в 4 раза короче?AlexM
Номер мобильного модема (без голосовой связи) 9269171249 МегаФон, Московский регион.
Ответить
Сообщение вот что у меня получилось
А почему вас не устроила формула в 4 раза короче?Автор - AlexM Дата добавления - 17.03.2017 в 19:08
bmv98rus
Дата: Пятница, 17.03.2017, 20:11 |
Сообщение № 28
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4147
Репутация:
772
±
Замечаний:
0% ±
Excel 2013/2016
DSA , "Мега" это скорее антоним слову длинный, и вот как раз AlexM , их вырисовывает на слову, не всегда понятно как получается, но работает. А вот "монстр" -да, при том для каждого монстр свой. Кому то и ВПР уже монстр.
DSA , "Мега" это скорее антоним слову длинный, и вот как раз AlexM , их вырисовывает на слову, не всегда понятно как получается, но работает. А вот "монстр" -да, при том для каждого монстр свой. Кому то и ВПР уже монстр.bmv98rus
Замечательный Временно просто медведь , процентов на 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
Ответить
Сообщение 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))
Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение Ещё вариант массивной (Ctrl+Shift+Enter) формулы:Код
=МАКС(ЕСЛИОШИБКА(--ПСТР(A1;ПОИСК("шт";A1)-СТРОКА($1:$6);СТРОКА($1:$6));0))
Автор - Светлый Дата добавления - 19.03.2017 в 22:53