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

Вход

Регистрация

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

 

= Мир MS Excel/Поиск в массиве по двум критериям - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Поиск в массиве по двум критериям (Формулы/Formulas)
Поиск в массиве по двум критериям
Maxim_prm Дата: Вторник, 04.07.2017, 08:17 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый день. прошу Вас помочь мне вот с такой задачей:
Есть два источника по заправкам техник (Лист1 и Лист2), необходимо в колонку F Листа2 подставить максимально близкое время (меньшее) из колонки B Листа1, но учитывая №карты (колонка С Листа1 и Колонка Е Листа2).
Другими словами нужно искать время только в тех строках. в которых № карты совпадает.
Спасибо.
К сообщению приложен файл: 1347496.xlsx(33Kb)
 
Ответить
СообщениеДобрый день. прошу Вас помочь мне вот с такой задачей:
Есть два источника по заправкам техник (Лист1 и Лист2), необходимо в колонку F Листа2 подставить максимально близкое время (меньшее) из колонки B Листа1, но учитывая №карты (колонка С Листа1 и Колонка Е Листа2).
Другими словами нужно искать время только в тех строках. в которых № карты совпадает.
Спасибо.

Автор - Maxim_prm
Дата добавления - 04.07.2017 в 08:17
_Boroda_ Дата: Вторник, 04.07.2017, 09:00 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 10830
Репутация: 4473 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
У Вас время на Лист1 по убыванию, следовательно, вполне достаточно такой формулы
Код
=ЕСЛИОШИБКА(--ИНДЕКС(Лист1!B:B;ПОИСКПОЗ(E2;Лист1!C$1:C$141;));"")

Или формула массива. Здесь уже неважно, что время отсортировано
Код
=МАКС(--ЕСЛИ(E2=Лист1!C$1:C$141;Лист1!B$1:B$141))

Два минуса переводят "текстовую" дату в "числовую"
Формат ячеек во второй формуле можно поставить
ДД.ММ.ГГГГ чч:мм:сс;;

Файл перевложил
К сообщению приложен файл: 1347496_1.xlsx(32Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеУ Вас время на Лист1 по убыванию, следовательно, вполне достаточно такой формулы
Код
=ЕСЛИОШИБКА(--ИНДЕКС(Лист1!B:B;ПОИСКПОЗ(E2;Лист1!C$1:C$141;));"")

Или формула массива. Здесь уже неважно, что время отсортировано
Код
=МАКС(--ЕСЛИ(E2=Лист1!C$1:C$141;Лист1!B$1:B$141))

Два минуса переводят "текстовую" дату в "числовую"
Формат ячеек во второй формуле можно поставить
ДД.ММ.ГГГГ чч:мм:сс;;

Файл перевложил

Автор - _Boroda_
Дата добавления - 04.07.2017 в 09:00
Maxim_prm Дата: Вторник, 04.07.2017, 09:51 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
_Boroda_, Большое спасибо за помощь, я наверное неправильно объяснил, необходимо найти дату/время максимально приближенную к времени (колонка B листа2) и учитывая номер карты. Т.е. в колонке F строка 2 должна была появится дата/время из строки 138 на Листе1 (08.05.2017 08:37:02). Заранее прошу прощения за непонятное объяснение изначально.
 
Ответить
Сообщение_Boroda_, Большое спасибо за помощь, я наверное неправильно объяснил, необходимо найти дату/время максимально приближенную к времени (колонка B листа2) и учитывая номер карты. Т.е. в колонке F строка 2 должна была появится дата/время из строки 138 на Листе1 (08.05.2017 08:37:02). Заранее прошу прощения за непонятное объяснение изначально.

Автор - Maxim_prm
Дата добавления - 04.07.2017 в 09:51
_Boroda_ Дата: Вторник, 04.07.2017, 10:00 | Сообщение № 4
Группа: Модераторы
Ранг: Местный житель
Сообщений: 10830
Репутация: 4473 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Это я невнимательно прочитал
Так?
Код
=МАКС(--ЕСЛИ((E2=Лист1!C$1:C$141)*(--B2>--Лист1!B$1:B$141);Лист1!B$1:B$141))

Код
=ЕСЛИОШИБКА(--ИНДЕКС(Лист1!B:B;ПОИСКПОЗ(E2;ЕСЛИ(--B2>--Лист1!B$1:B$141;Лист1!C$1:C$141);));"")
К сообщению приложен файл: 1347496_2.xlsx(32Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеЭто я невнимательно прочитал
Так?
Код
=МАКС(--ЕСЛИ((E2=Лист1!C$1:C$141)*(--B2>--Лист1!B$1:B$141);Лист1!B$1:B$141))

Код
=ЕСЛИОШИБКА(--ИНДЕКС(Лист1!B:B;ПОИСКПОЗ(E2;ЕСЛИ(--B2>--Лист1!B$1:B$141;Лист1!C$1:C$141);));"")

Автор - _Boroda_
Дата добавления - 04.07.2017 в 10:00
Maxim_prm Дата: Вторник, 04.07.2017, 11:25 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
_Boroda_, Отлично, то что доктор прописал. Огромное СПАСИБО!!) Три дня голову ломали.
 
Ответить
Сообщение_Boroda_, Отлично, то что доктор прописал. Огромное СПАСИБО!!) Три дня голову ломали.

Автор - Maxim_prm
Дата добавления - 04.07.2017 в 11:25
jakim Дата: Вторник, 04.07.2017, 13:38 | Сообщение № 6
Группа: Друзья
Ранг: Ветеран
Сообщений: 787
Репутация: 205 ±
Замечаний: 0% ±

Для Вашего офиса подойдёт и такая формула без массивного ввода

Код
=IFERROR(AGGREGATE(14;6;Лист1!B$1:B$141/(Лист1!B$1:B$141<B2)/(Лист1!C$1:C$141=E2);1);"")

только время на обоих листах должно быть в числовом формате.
К сообщению приложен файл: 0951318.xlsx(35Kb)


Сообщение отредактировал jakim - Вторник, 04.07.2017, 13:38
 
Ответить
Сообщение
Для Вашего офиса подойдёт и такая формула без массивного ввода

Код
=IFERROR(AGGREGATE(14;6;Лист1!B$1:B$141/(Лист1!B$1:B$141<B2)/(Лист1!C$1:C$141=E2);1);"")

только время на обоих листах должно быть в числовом формате.

Автор - jakim
Дата добавления - 04.07.2017 в 13:38
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Поиск в массиве по двум критериям (Формулы/Formulas)
Страница 1 из 11
Поиск:

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