Выбор массива по условию excel
Выборка значений из таблицы Excel по условию
Если приходиться работать с большими таблицами определенно найдете в них дублирующийся суммы разбросаны вдоль целого столбца. В тоже время у вас может возникнуть необходимость выбрать данные из таблицы с первым наименьшим числовым значением, которое имеет свои дубликаты. Нужна автоматическая выборка данных по условию. В Excel для этой цели можно успешно использовать формулу в массиве.
Как сделать выборку в Excel по условию
Чтобы определить соответствующие значение первому наименьшему числу нужна выборка из таблицы по условию. Допустим мы хотим узнать первый самый дешевый товар на рынке из данного прайса:
Автоматическую выборку реализует нам формула, которая будет обладать следующей структурой:
В месте «диапазон_данных_для_выборки» следует указать область значений A6:A18 для выборки из таблицы (например, текстовых), из которых функция ИНДЕКС выберет одно результирующие значение. Аргумент «диапазон» означает область ячеек с числовыми значениями, из которых следует выбрать первое наименьшее число. В аргументе «заголовок_столбца» для второй функции СТРОКА, следует указать ссылку на ячейку с заголовком столбца, который содержит диапазон числовых значений.
Естественно эту формулу следует выполнять в массиве. Поэтому для подтверждения ее ввода следует нажимать не просто клавишу Enter, а целую комбинацию клавиш CTRL+SHIFT+Enter. Если все сделано правильно в строке формул появятся фигурные скобки.
Обратите внимание ниже на рисунок, где в ячейку B3 была введена данная формула в массиве:
Выборка соответственного значения с первым наименьшим числом:
С такой формулой нам удалось выбрать минимальное значение относительно чисел. Далее разберем принцип действия формулы и пошагово проанализируем весь порядок всех вычислений.
Как работает выборка по условию
Ключевую роль здесь играет функция ИНДЕКС. Ее номинальное задание – это выбирать из исходной таблицы (указывается в первом аргументе – A6:A18) значения соответственные определенным числам. ИНДЕКС работает с учетом критериев определённых во втором (номер строки внутри таблицы) и третьем (номер столбца в таблице) аргументах. Так как наша исходная таблица A6:A18 имеет только 1 столбец, то третий аргумент в функции ИНДЕКС мы не указываем.
Чтобы вычислить номер строки таблицы напротив наименьшего числа в смежном диапазоне B6:B18 и использовать его в качестве значения для второго аргумента, применяется несколько вычислительных функций.
Функция ЕСЛИ позволяет выбрать значение из списка по условию. В ее первом аргументе указано где проверяется каждая ячейка в диапазоне B6:B18 на наличие наименьшего числового значения: ЕСЛИB6:B18=МИНB6:B18. Таким способом в памяти программы создается массив из логических значений ИСТИНА и ЛОЖЬ. В нашем случаи 3 элемента массива будут содержат значение ИСТИНА, так как минимальное значение 8 содержит еще 2 дубликата в столбце B6:B18.
Следующий шаг – это определение в каких именно строках диапазона находится каждое минимальное значение. Это нам необходимо по причине определения именно первого наименьшего значения. Реализовывается данная задача с помощью функции СТРОКА, она заполняет элементы массива в памяти программы номерами строк листа. Но сначала от всех этих номеров вычитается номер на против первой строки таблицы – B5, то есть число 5. Это делается потому, что функция ИНДЕКС работает с номерами внутри таблицы, а не с номерами рабочего листа Excel. В тоже время функция СТРОКА умеет возвращать только номера строк листа. Чтобы не получилось смещение необходимо сопоставить порядок номеров строк листа и таблицы с помощи вычитанием разницы. Например, если таблица находится на 5-ой строке листа значит каждая строка таблицы будет на 5 меньше чем соответственная строка листа.
После того как будут отобраны все минимальные значения и сопоставлены все номера строк таблицы функция МИН выберет наименьший номер строки. Эта же строка будет содержать первое наименьшее число, которое встречается в столбце B6:B18. На основании этого номера строки функции ИНДЕКС выберет соответствующее значение из таблицы A6:A18. В итоге формула возвращает это значение в ячейку B3 в качестве результата вычисления.
Как выбрать значение с наибольшим числом в Excel
Поняв принцип действия формулы, теперь можно легко ее модифицировать и настраивать под другие условия. Например, формулу можно изменить так, чтобы выбрать первое максимальное значение в Excel:
Если необходимо изменить условия формулы так, чтобы можно было в Excel выбрать первое максимальное, но меньше чем 70:
=70;»»;B6:B18));СТРОКА(B6:B18)-СТРОКА(B5);»»)))’ >
Как в Excel выбрать первое минимальное значение кроме нуля:
Как легко заметить, эти формулы отличаются между собой только функциями МИН и МАКС и их аргументами.
Теперь Вас ни что не ограничивает. Один раз разобравшись с принципами действия формул в массиве Вы сможете легко модифицировать их под множество условий и быстро решать много вычислительных задач.
5 основных функции для работы с массивами
Доброго времени суток друзья!
Сегодня я бы хотел затронуть тему массивов, так как частенько возникает ситуация, когда нужно найти значение в большом массиве данных. Для этих целей в Excel существует целый раздел функции для работы с массивами, которые помогают нам выполнять работы с массивами, но сейчас мы рассмотрим самые распространенные.
Обратите внимание, на эти функции, так как работа с огромными массивами данных, одна из самых распространенных и правильное использование этих функции позволит вам значительно упростить и облегчить работу с таблицами Excel.
Ну, что же, изучим необходимые функции для работы с массивами:
1. Функция ВЫБОР (CHOOSE)
Позволит вам выбрать значение из общего списка по указанному номеру позиции:
=ВЫБОР(2;»Стул»;»Стол»;»Шкаф»;»Диван»)
2. Функция ИНДЕКС (INDEX)
Эта функция возвращает указанное значение из одно- или двумерного диапазона:
=ИНДЕКС(A1:C6;4;3)
Как видно с примера, полученное значение 37, в указанном диапазоне стоит на пересечении строки №4 и столбика №3 в диапазоне A1:C6 указанном в формуле. В более простом примере показано как в диапазоне С1:С6, на 2 месте находится значение 15:
=ИНДЕКС(С1:С6;2)
3. Функция ПОИСКПОЗ (MATCH)
Эта функция вернет позицию значения, которое вы будете искать в указанном диапазоне:
=ПОИСКПОЗ(B3;B2:B5;0)
С примера вы можете видеть что слово «Стол» занимает 2 позицию в указанном диапазоне. Замечу, что третий аргумент в функции не является обязательным. При введенном значении 0, функция вернет ту позицию элемента массива, которое точно совпадает со значением, которое мы ищем. В случае, когда точное совпадение отсутствует, функция выдаст ошибку #Н/Д (#N/A).
4. Функция ГПР (HLOOKUP)
Ищет значение в указанном диапазоне и возвращает значение ячейки, которая находится в указанной строке того же столбца: =ГПР(C1;$B$1:$E$2;1;ЛОЖЬ). Как видите с примера, функция ГПР ищет в указанном диапазоне $B$1:$E$2 (знаком $ я указал абсолютную ссылку) и согласно условию возвращает искомое значение из первой строки, а аргумент «ЛОЖЬ» означает, что-либо, будет найдено нужное значение, либо мы получим ошибку #Н/Д.
5. Функция ВПР (VLOOKUP)
Во многом, даже очень во многом, похожа на функцию ГПР, но используется не для горизонтальных массивов, а вертикальных, что наиболее распространено в использовании.
=ВПР(B4;$B$2:$C$5;2;ЛОЖЬ)
Как видим, формула идентична предыдущей функции ГПР и так же ищет указанный номер «B4» в диапазоне $B$2:$C$5 со знаком $ (это сделано для создания абсолютной ссылки, что бы при копировании формулы на диапазон, аргумент не будет изменен), в третьем столбце, так как аргумент функции равен 2. Ну и четвёртый аргумент равен значению «ЛОЖЬ», это означает, что-либо будет найдено совпадение значений, либо будет получено сообщение об ошибке #Н/Д. Теперь при необходимости, мы копируем формулу, и она перенесёт все правильные аргументы по всему диапазону вычислений. Это возможно стало из-за абсолютной ссылки на массив значений, а вот первый аргумент на B4, при копировании, должен измениться на B5 и так далее.
А на этом у меня всё! Я очень надеюсь, что описание 5 основных функций для работы с массивами вам стали ближе и понятнее. Буду очень благодарен за оставленные комментарии, так как это показатель читаемости и вдохновляет на написание новых статей! Делитесь с друзьями прочитанным и ставьте лайк!
Не забудьте поблагодарить автора!
Деньги для людей умных составляют средство, для глупцов — цель. А. Декурсель
Выбор массива по условию excel
Подскажите, пожалуйста, как решить задачу. Есть данные (пример во вложении), нужно данные на листе 1 загнать в массив и из этого массива по условиям на листе 2 вывести значения в столбец G. Например, если в массиве столбец 1 равен условию на втором листе в столбце B и столбец 2 из массива равен условию на листе 2 из столбца С и т. д. то выводится значение в стоблец G. Для первого варианта ответ 100, для второго 170. Значения в столбцах на первом листе могут повторяться, но все пять значений одновременно они уникальны. Спасибо за любой совет.
Подскажите, пожалуйста, как решить задачу. Есть данные (пример во вложении), нужно данные на листе 1 загнать в массив и из этого массива по условиям на листе 2 вывести значения в столбец G. Например, если в массиве столбец 1 равен условию на втором листе в столбце B и столбец 2 из массива равен условию на листе 2 из столбца С и т. д. то выводится значение в стоблец G. Для первого варианта ответ 100, для второго 170. Значения в столбцах на первом листе могут повторяться, но все пять значений одновременно они уникальны. Спасибо за любой совет. Bregra1
Подскажите, пожалуйста, как решить задачу. Есть данные (пример во вложении), нужно данные на листе 1 загнать в массив и из этого массива по условиям на листе 2 вывести значения в столбец G. Например, если в массиве столбец 1 равен условию на втором листе в столбце B и столбец 2 из массива равен условию на листе 2 из столбца С и т. д. то выводится значение в стоблец G. Для первого варианта ответ 100, для второго 170. Значения в столбцах на первом листе могут повторяться, но все пять значений одновременно они уникальны. Спасибо за любой совет. Автор — Bregra1
Дата добавления — 14.02.2016 в 12:43
Pelena | Дата: Воскресенье, 14.02.2016, 12:55 | Сообщение № 2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Ответить | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|