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

Вход

Регистрация

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

 

= Мир MS Excel/Как вытащить несколько записей из БД,удовлетворяющих условию - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Как вытащить несколько записей из БД,удовлетворяющих условию (Формулы/Formulas)
Как вытащить несколько записей из БД,удовлетворяющих условию
Aaron18 Дата: Понедельник, 18.03.2019, 21:43 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Добрый вечер.У меня есть база данных(пример прикрепил) где хранится определенная информация о клиенте.Мне нужно вытащить все записи из БД,которые удовлетворяют моим условиям(в моем случае вытащить все данные, исходя из имени и фамилии).Пробовал делать через БИЗВЛЕЧЬ,но данная функция извлекает только одну запись из БД.Можно использовать формулы,макросы
К сообщению приложен файл: 2987177.xlsx(9.9 Kb)
 
Ответить
СообщениеДобрый вечер.У меня есть база данных(пример прикрепил) где хранится определенная информация о клиенте.Мне нужно вытащить все записи из БД,которые удовлетворяют моим условиям(в моем случае вытащить все данные, исходя из имени и фамилии).Пробовал делать через БИЗВЛЕЧЬ,но данная функция извлекает только одну запись из БД.Можно использовать формулы,макросы

Автор - Aaron18
Дата добавления - 18.03.2019 в 21:43
bmv98rus Дата: Понедельник, 18.03.2019, 21:54 | Сообщение № 2
Группа: Проверенные
Ранг: Участник клуба
Сообщений: 2524
Репутация: 436 ±
Замечаний: 0% ±

Excel 2013/2016
основная формула
Код
=IFERROR(SMALL(IF(($C$6:$C$11=$J$5)*($D$6:$D$11=$K$5);$A$6:$A$11);ROW(A1));"")

далее впр по вкусу.
Обратите внимание, у вас в примере Андрей в J5 был занесен с лишним пробелом.

При правильной организации и больших объемах лучше всего подойдет вариант SQL (MSQuery), что будет и менее напряжно для Excel.
К сообщению приложен файл: Copy_of_736.xlsx(10.5 Kb)


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

Сообщение отредактировал bmv98rus - Понедельник, 18.03.2019, 21:57
 
Ответить
Сообщениеосновная формула
Код
=IFERROR(SMALL(IF(($C$6:$C$11=$J$5)*($D$6:$D$11=$K$5);$A$6:$A$11);ROW(A1));"")

далее впр по вкусу.
Обратите внимание, у вас в примере Андрей в J5 был занесен с лишним пробелом.

При правильной организации и больших объемах лучше всего подойдет вариант SQL (MSQuery), что будет и менее напряжно для Excel.

Автор - bmv98rus
Дата добавления - 18.03.2019 в 21:54
_Boroda_ Дата: Понедельник, 18.03.2019, 21:57 | Сообщение № 3
Группа: Модераторы
Ранг: Местный житель
Сообщений: 15576
Репутация: 6077 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Например расширенным фильтром можно Данные - Дополнительно (см файл, там скрин условий)
Формулами не вопрос, но если база большая, то лучше с допстолбцом
Код
=ЕСЛИ((C6=J$2)*(D6=K$2);МАКС(F$5:F5)+1)

И формула
Код
=ЕСЛИОШИБКА(ИНДЕКС(A:A;ПОИСКПОЗ(СТРОКА(H1);$F$1:$F$999;));"")

Можно сводной таблицей (тоже в файле)

Можно Повер Квери, можно макрос, но 3 представленных способа по-моему самые простые
К сообщению приложен файл: 2987177_1.xlsx(38.1 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеНапример расширенным фильтром можно Данные - Дополнительно (см файл, там скрин условий)
Формулами не вопрос, но если база большая, то лучше с допстолбцом
Код
=ЕСЛИ((C6=J$2)*(D6=K$2);МАКС(F$5:F5)+1)

И формула
Код
=ЕСЛИОШИБКА(ИНДЕКС(A:A;ПОИСКПОЗ(СТРОКА(H1);$F$1:$F$999;));"")

Можно сводной таблицей (тоже в файле)

Можно Повер Квери, можно макрос, но 3 представленных способа по-моему самые простые

Автор - _Boroda_
Дата добавления - 18.03.2019 в 21:57
bmv98rus Дата: Понедельник, 18.03.2019, 22:08 | Сообщение № 4
Группа: Проверенные
Ранг: Участник клуба
Сообщений: 2524
Репутация: 436 ±
Замечаний: 0% ±

Excel 2013/2016
_Boroda_, Александр, ну нельзя ж так. И что теперь с этим богатством выборов ТС делать должен? :-)

Aaron18, В зависимости от условия и применений, можно выбрать вариант. Например формульный плох тем что на больших объемах будет проигрыш по скорости. Расширенный фильтр, надо руками перестраивать при смене параметров. Сводная имеет немного другой вид, а MS Query, хоть и автоматом обновляется при смене параметров но требует чтоб таблица начиналась с первой строки листа и привязчива к месту положения файла.


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
Сообщение_Boroda_, Александр, ну нельзя ж так. И что теперь с этим богатством выборов ТС делать должен? :-)

Aaron18, В зависимости от условия и применений, можно выбрать вариант. Например формульный плох тем что на больших объемах будет проигрыш по скорости. Расширенный фильтр, надо руками перестраивать при смене параметров. Сводная имеет немного другой вид, а MS Query, хоть и автоматом обновляется при смене параметров но требует чтоб таблица начиналась с первой строки листа и привязчива к месту положения файла.

Автор - bmv98rus
Дата добавления - 18.03.2019 в 22:08
Aaron18 Дата: Понедельник, 18.03.2019, 23:41 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Всем большое спасибо за помощь,вы мне очень помогли
 
Ответить
СообщениеВсем большое спасибо за помощь,вы мне очень помогли

Автор - Aaron18
Дата добавления - 18.03.2019 в 23:41
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Как вытащить несколько записей из БД,удовлетворяющих условию (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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