Отображение части данных из ячейки в отдельном столбце
zaak88
Дата: Понедельник, 31.10.2016, 10:32 |
Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 179
Репутация:
1
±
Замечаний:
0% ±
Excel 2013
Коллеги, прошу помочь с вопросом отображения срока годности в отдельном столбце исходя из данных в текстовой ячейке - отдельная цифра. как в жёлтой ячейке. Спасибо!
Коллеги, прошу помочь с вопросом отображения срока годности в отдельном столбце исходя из данных в текстовой ячейке - отдельная цифра. как в жёлтой ячейке. Спасибо! zaak88
Ответить
Сообщение Коллеги, прошу помочь с вопросом отображения срока годности в отдельном столбце исходя из данных в текстовой ячейке - отдельная цифра. как в жёлтой ячейке. Спасибо! Автор - zaak88 Дата добавления - 31.10.2016 в 10:32
buchlotnik
Дата: Понедельник, 31.10.2016, 10:54 |
Сообщение № 2
Группа: Заблокированные
Ранг: Участник клуба
Сообщений: 3442
Репутация:
929
±
Замечаний:
20% ±
2010, 2013, 2016 RUS / ENG
НаЮДэЭфил [vba]Код
Function srok(t$) With CreateObject("VBScript.RegExp") .Pattern = ".+\(\D+(\d+).+" srok = .Replace(t, "$1") srok = CInt(srok) End With End Function
[/vba]
НаЮДэЭфил [vba]Код
Function srok(t$) With CreateObject("VBScript.RegExp") .Pattern = ".+\(\D+(\d+).+" srok = .Replace(t, "$1") srok = CInt(srok) End With End Function
[/vba] buchlotnik
Сообщение отредактировал buchlotnik - Понедельник, 31.10.2016, 10:57
Ответить
Сообщение НаЮДэЭфил [vba]Код
Function srok(t$) With CreateObject("VBScript.RegExp") .Pattern = ".+\(\D+(\d+).+" srok = .Replace(t, "$1") srok = CInt(srok) End With End Function
[/vba] Автор - buchlotnik Дата добавления - 31.10.2016 в 10:54
_Boroda_
Дата: Понедельник, 31.10.2016, 10:55 |
Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 16888
Репутация:
6611
±
Замечаний:
±
2003; 2007; 2010; 2013 RUS
Такой вариантКод
=--СЖПРОБЕЛЫ(ЛЕВБ(ПРАВБ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;",";" ");".";" ");" ";ПОВТОР(" ";99));198);99))
Как Алексей подсказывает (и я с ним совершенно согласен), СЖПРОБЕЛЫ здесь не нужно
Такой вариантКод
=--СЖПРОБЕЛЫ(ЛЕВБ(ПРАВБ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;",";" ");".";" ");" ";ПОВТОР(" ";99));198);99))
Как Алексей подсказывает (и я с ним совершенно согласен), СЖПРОБЕЛЫ здесь не нужно _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Сообщение отредактировал _Boroda_ - Понедельник, 31.10.2016, 12:22
Ответить
Сообщение Такой вариантКод
=--СЖПРОБЕЛЫ(ЛЕВБ(ПРАВБ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;",";" ");".";" ");" ";ПОВТОР(" ";99));198);99))
Как Алексей подсказывает (и я с ним совершенно согласен), СЖПРОБЕЛЫ здесь не нужно Автор - _Boroda_ Дата добавления - 31.10.2016 в 10:55
ReAnima
Дата: Понедельник, 31.10.2016, 10:59 |
Сообщение № 4
Группа: Пользователи
Ранг: Участник
Сообщений: 50
Репутация:
9
±
Замечаний:
20% ±
Excel 2013
Если срок годности из 1-го символа, то можно вот так:Код
=--ЕСЛИОШИБКА(ПСТР(A2;ПОИСК("? лет";A2);1);ПСТР(A2;ПОИСК("? Год";A2);1))
Если срок годности из 1-го символа, то можно вот так:Код
=--ЕСЛИОШИБКА(ПСТР(A2;ПОИСК("? лет";A2);1);ПСТР(A2;ПОИСК("? Год";A2);1))
ReAnima
Ответить
Сообщение Если срок годности из 1-го символа, то можно вот так:Код
=--ЕСЛИОШИБКА(ПСТР(A2;ПОИСК("? лет";A2);1);ПСТР(A2;ПОИСК("? Год";A2);1))
Автор - ReAnima Дата добавления - 31.10.2016 в 10:59
AlexM
Дата: Понедельник, 31.10.2016, 11:52 |
Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация:
1130
±
Замечаний:
0% ±
Excel 2003
Если перед значением срока годности везде был бы пробел, то подойдет формула массиваКод
=-ВПР(;-ПСТР(A2;СТРОКА($1:$99);3);1)
А если как в примере, тоКод
=-ВПР(;-ПСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;".";" ");",";" ");СТРОКА($1:$99);3);1)
Еще обычная формула, если срок годности из 1-го символаКод
=--ПСТР(A2;-ПРОСМОТР(;-ПОИСК("? "&{"Год";"лет"};A2));2)
Если перед значением срока годности везде был бы пробел, то подойдет формула массиваКод
=-ВПР(;-ПСТР(A2;СТРОКА($1:$99);3);1)
А если как в примере, тоКод
=-ВПР(;-ПСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;".";" ");",";" ");СТРОКА($1:$99);3);1)
Еще обычная формула, если срок годности из 1-го символаКод
=--ПСТР(A2;-ПРОСМОТР(;-ПОИСК("? "&{"Год";"лет"};A2));2)
AlexM
Номер мобильного модема (без голосовой связи) 9269171249 МегаФон, Московский регион.
Сообщение отредактировал AlexM - Понедельник, 31.10.2016, 12:03
Ответить
Сообщение Если перед значением срока годности везде был бы пробел, то подойдет формула массиваКод
=-ВПР(;-ПСТР(A2;СТРОКА($1:$99);3);1)
А если как в примере, тоКод
=-ВПР(;-ПСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;".";" ");",";" ");СТРОКА($1:$99);3);1)
Еще обычная формула, если срок годности из 1-го символаКод
=--ПСТР(A2;-ПРОСМОТР(;-ПОИСК("? "&{"Год";"лет"};A2));2)
Автор - AlexM Дата добавления - 31.10.2016 в 11:52
sv2014
Дата: Понедельник, 31.10.2016, 11:55 |
Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 226
Репутация:
61
±
Замечаний:
0% ±
Excel 2013
zaak88 , вариант функции uuu в столбце B или uuu1 в столбце C [vba]Код
Function uuu%(t$) With CreateObject("VBScript.RegExp"): .Pattern = "\d+": .Global = True uuu = .Execute(t)(.Execute(t).Count - 1) End With End Function
[/vba] Function uuu1%(t$) With CreateObject("VBScript.RegExp"): .Pattern = "\d+(?= лет| год| года)" uuu1 = .Execute(t)(0) End With End Function
zaak88 , вариант функции uuu в столбце B или uuu1 в столбце C [vba]Код
Function uuu%(t$) With CreateObject("VBScript.RegExp"): .Pattern = "\d+": .Global = True uuu = .Execute(t)(.Execute(t).Count - 1) End With End Function
[/vba] Function uuu1%(t$) With CreateObject("VBScript.RegExp"): .Pattern = "\d+(?= лет| год| года)" uuu1 = .Execute(t)(0) End With End Functionsv2014
Сообщение отредактировал sv2014 - Понедельник, 31.10.2016, 12:21
Ответить
Сообщение zaak88 , вариант функции uuu в столбце B или uuu1 в столбце C [vba]Код
Function uuu%(t$) With CreateObject("VBScript.RegExp"): .Pattern = "\d+": .Global = True uuu = .Execute(t)(.Execute(t).Count - 1) End With End Function
[/vba] Function uuu1%(t$) With CreateObject("VBScript.RegExp"): .Pattern = "\d+(?= лет| год| года)" uuu1 = .Execute(t)(0) End With End FunctionАвтор - sv2014 Дата добавления - 31.10.2016 в 11:55
zaak88
Дата: Понедельник, 31.10.2016, 17:55 |
Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 179
Репутация:
1
±
Замечаний:
0% ±
Excel 2013
buchlotnik , _Boroda_ , ReAnima , AlexM , sv2014 , спасибо! выручили!
buchlotnik , _Boroda_ , ReAnima , AlexM , sv2014 , спасибо! выручили!zaak88
Ответить
Сообщение buchlotnik , _Boroda_ , ReAnima , AlexM , sv2014 , спасибо! выручили!Автор - zaak88 Дата добавления - 31.10.2016 в 17:55