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

Вход

Регистрация

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

 

= Мир MS Excel/Поиск в векторе по нескольким значениям - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Поиск в векторе по нескольким значениям (Формулы/Formulas)
Поиск в векторе по нескольким значениям
nasyaa Дата: Суббота, 22.04.2017, 16:03 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Всем привет.
У меня есть столбец с кодом:
gjg-gh-000-547jk-465
gjg-gh-000-547jk-465
gjg-gh-000-547mm-465
gjg-gh-000-547ms-465
gjg-gh-000-54mnk-465
gjg-gh-000-54mnk-465
gjg-gh-000-54tmb-465
kjg-gh-000-547mb-465
ggf-gh-000-547ms-465

Исходя из внутреннего содержания кода мне нужно сделать распределение отделов:
ищем отдел
jk- jky
mb- mk
ggfms ams
mm- om
mnk- ok
ms- mn
tmb- df

Во вложении есть моя реализация, хочу услышать авторитетное мнение, мб что-то стоит доработать или переделать.
К сообщению приложен файл: __.xlsx (10.7 Kb)


Сообщение отредактировал nasyaa - Суббота, 22.04.2017, 16:03
 
Ответить
СообщениеВсем привет.
У меня есть столбец с кодом:
gjg-gh-000-547jk-465
gjg-gh-000-547jk-465
gjg-gh-000-547mm-465
gjg-gh-000-547ms-465
gjg-gh-000-54mnk-465
gjg-gh-000-54mnk-465
gjg-gh-000-54tmb-465
kjg-gh-000-547mb-465
ggf-gh-000-547ms-465

Исходя из внутреннего содержания кода мне нужно сделать распределение отделов:
ищем отдел
jk- jky
mb- mk
ggfms ams
mm- om
mnk- ok
ms- mn
tmb- df

Во вложении есть моя реализация, хочу услышать авторитетное мнение, мб что-то стоит доработать или переделать.

Автор - nasyaa
Дата добавления - 22.04.2017 в 16:03
AlexM Дата: Суббота, 22.04.2017, 16:55 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4491
Репутация: 1115 ±
Замечаний: 0% ±

Excel 2003
Определяем сразу нужный отдел
Код
=ПРОСМОТР(99;ПОИСК(Лист2!A$2:A$8;A3);Лист2!B$2:B$8)
диапазон с запасом
Код
=ПРОСМОТР(99;ПОИСК(Лист2!A$2:A$99&"";A3)/(Лист2!A$2:A$99<>"");Лист2!B$2:B$99)
Заменив в формуле Лист2!B$2:B$99 на Лист2!A$2:A$99, формула вернет искомое значение.



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


Сообщение отредактировал AlexM - Суббота, 22.04.2017, 17:08
 
Ответить
СообщениеОпределяем сразу нужный отдел
Код
=ПРОСМОТР(99;ПОИСК(Лист2!A$2:A$8;A3);Лист2!B$2:B$8)
диапазон с запасом
Код
=ПРОСМОТР(99;ПОИСК(Лист2!A$2:A$99&"";A3)/(Лист2!A$2:A$99<>"");Лист2!B$2:B$99)
Заменив в формуле Лист2!B$2:B$99 на Лист2!A$2:A$99, формула вернет искомое значение.

Автор - AlexM
Дата добавления - 22.04.2017 в 16:55
nasyaa Дата: Суббота, 22.04.2017, 17:41 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
AlexM, подскажите, пжл, почему искомое значение = 99 в функции просмотр?
Код
=ПРОСМОТР(99;ПОИСК(Лист2!A$2:A$8;A3);Лист2!B$2:B$8)
 
Ответить
СообщениеAlexM, подскажите, пжл, почему искомое значение = 99 в функции просмотр?
Код
=ПРОСМОТР(99;ПОИСК(Лист2!A$2:A$8;A3);Лист2!B$2:B$8)

Автор - nasyaa
Дата добавления - 22.04.2017 в 17:41
AlexM Дата: Суббота, 22.04.2017, 18:18 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4491
Репутация: 1115 ±
Замечаний: 0% ±

Excel 2003
Функция ПОИСК() ищет позицию первого вхождения подстроки в строке.
Код имеет длину меньше 99 символов, значит позиция первого вхождения подстроки в строке, будет еще меньше.
Если ПРОСМОТР не может найти искомое_значение, то подходящим считается наибольшее значение в аргументе просматриваемый_вектор, которое меньше, чем искомое_значение. (из описания функции) Так как 99 в просматриваемом массиве быть не может, то функция вернет какое-то другое значение. Какое это значение не важно, важно его позиция в массиве.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеФункция ПОИСК() ищет позицию первого вхождения подстроки в строке.
Код имеет длину меньше 99 символов, значит позиция первого вхождения подстроки в строке, будет еще меньше.
Если ПРОСМОТР не может найти искомое_значение, то подходящим считается наибольшее значение в аргументе просматриваемый_вектор, которое меньше, чем искомое_значение. (из описания функции) Так как 99 в просматриваемом массиве быть не может, то функция вернет какое-то другое значение. Какое это значение не важно, важно его позиция в массиве.

Автор - AlexM
Дата добавления - 22.04.2017 в 18:18
nasyaa Дата: Вторник, 25.04.2017, 15:38 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
AlexM, поясните, пжл, еще вот эту часть формулы, заранее спасибо.

Код
ПОИСК(Лист2!A$2:A$99[b][i]&""[/i][/b];A3)[b][i]/[/i][/b](Лист2!A$2:A$99[b][i]<>""[/i][/b])


Сообщение отредактировал nasyaa - Вторник, 25.04.2017, 16:24
 
Ответить
СообщениеAlexM, поясните, пжл, еще вот эту часть формулы, заранее спасибо.

Код
ПОИСК(Лист2!A$2:A$99[b][i]&""[/i][/b];A3)[b][i]/[/i][/b](Лист2!A$2:A$99[b][i]<>""[/i][/b])

Автор - nasyaa
Дата добавления - 25.04.2017 в 15:38
_Boroda_ Дата: Вторник, 25.04.2017, 16:10 | Сообщение № 6
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
nasyaa, Для формул есть специальные теги. Видите, как у Алексея выглядят формулы? В режиме правки поста нужно их выделить и нажать кнопочку fx
Почитайте Правила форума, там есть ссылка вот сюда
http://www.excelworld.ru/forum/13-2708-1

Исправьте свои посты

Добавлено
2-й поправил Вам.
В 3-м нужно еще убрать теги курсора и жирного [i] и [b], а то формула странная какая-то получается


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщениеnasyaa, Для формул есть специальные теги. Видите, как у Алексея выглядят формулы? В режиме правки поста нужно их выделить и нажать кнопочку fx
Почитайте Правила форума, там есть ссылка вот сюда
http://www.excelworld.ru/forum/13-2708-1

Исправьте свои посты

Добавлено
2-й поправил Вам.
В 3-м нужно еще убрать теги курсора и жирного [i] и [b], а то формула странная какая-то получается

Автор - _Boroda_
Дата добавления - 25.04.2017 в 16:10
nasyaa Дата: Вторник, 25.04.2017, 16:26 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
_Boroda_, 3е сообщение поправила, 2е не могу, кнопка правка не активна.


Сообщение отредактировал nasyaa - Вторник, 25.04.2017, 16:26
 
Ответить
Сообщение_Boroda_, 3е сообщение поправила, 2е не могу, кнопка правка не активна.

Автор - nasyaa
Дата добавления - 25.04.2017 в 16:26
AlexM Дата: Вторник, 25.04.2017, 16:27 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4491
Репутация: 1115 ±
Замечаний: 0% ±

Excel 2003
nasyaa, можно без &"". Случайно осталось.
Код
=ПРОСМОТР(99;ПОИСК(Лист2!A$2:A$99;A3)/(Лист2!A$2:A$99<>"");Лист2!B$2:B$99)
К сообщению приложен файл: nasyaa.xlsx (10.6 Kb)



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


Сообщение отредактировал AlexM - Вторник, 25.04.2017, 16:29
 
Ответить
Сообщениеnasyaa, можно без &"". Случайно осталось.
Код
=ПРОСМОТР(99;ПОИСК(Лист2!A$2:A$99;A3)/(Лист2!A$2:A$99<>"");Лист2!B$2:B$99)

Автор - AlexM
Дата добавления - 25.04.2017 в 16:27
nasyaa Дата: Пятница, 23.06.2017, 13:37 | Сообщение № 9
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
AlexM, Добрый день.
У меня чуть усложнилась задача.
Появился дополнительный параметр и проблема еще в том, что есть похожие искомые значения (emx (с разряда 14) и mx(с разряда 15)) как с ними можно бороться?
В этом случае формула работает с ошибкой.
Заранее спасибо, очень жду ответа.
К сообщению приложен файл: 4127931.xlsx (18.7 Kb)
 
Ответить
СообщениеAlexM, Добрый день.
У меня чуть усложнилась задача.
Появился дополнительный параметр и проблема еще в том, что есть похожие искомые значения (emx (с разряда 14) и mx(с разряда 15)) как с ними можно бороться?
В этом случае формула работает с ошибкой.
Заранее спасибо, очень жду ответа.

Автор - nasyaa
Дата добавления - 23.06.2017 в 13:37
zs Дата: Пятница, 23.06.2017, 21:49 | Сообщение № 10
Группа: Заблокированные
Ранг: Участник
Сообщений: 87
Репутация: -19 ±
Замечаний: 100% ±

Excel 2003
Появился дополнительный параметр

простое решение:
лист1 искомые значения по формуле:
Код
=G3&I3

лист "справочник":
Код
=A2&C2

поиск по формуле:
Код
=ИНДЕКС(справочник!$A$1:$C$10;ПОИСКПОЗ(J3;справочник!$D$2:$D$10;0)+1;2)
 
Ответить
Сообщение
Появился дополнительный параметр

простое решение:
лист1 искомые значения по формуле:
Код
=G3&I3

лист "справочник":
Код
=A2&C2

поиск по формуле:
Код
=ИНДЕКС(справочник!$A$1:$C$10;ПОИСКПОЗ(J3;справочник!$D$2:$D$10;0)+1;2)

Автор - zs
Дата добавления - 23.06.2017 в 21:49
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Поиск в векторе по нескольким значениям (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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