Эксель массивы
Массивы в Excel пример использования
Массивы в Excel пример использования
Добрый день, уважаемые подписчики и читатели блога! Сегодня чуть больше поговорим о массивах и практике их применения в Excel.
Задам несколько целей — нужно в расчётах таблицы использовать формулы массива и комбинировать их с обычными формулами, подробнее рассмотреть плюсы и минусы использования массивов.
Как обычно мы действуем? Вводим формулу — количество * цену, плюсуем доставку, enter, протягиваем за маркер автозаполнения вниз, получаем результат. Способ классический, рабочий.
Давайте выполним те же самые действия, только умножать и прибавлять будем не ячейки, а целые диапазоны. Предварительно выделив диапазон от F3 до F11.
Первый нюанс, когда работаем с формулой массива нельзя нажимать Enter! Нажимаем Ctrl+Shift+Enter! Что это даст в итоге.
К обычной формуле добавятся фигурные скобки в самом начале и конце. Это говорит о том, что применён массив. То есть — если таблица большая, проще выделить весь столбец и использовать массив, чтобы не протягивать маркером до конца таблицы.
Комбинации формул массива и обычных формул
Усложняем задачу — нужно подвести итог (СУММ) по всему столбцу «ИТОГО», высчитать максимальную сумму заказа и узнать среднюю сумму заказа без копеек.
Аналогично воспользуемся функцией СУММ, только передадим ей опять массив в виде вычислений. Не забываем про Ctrl+Shift+Enter!
Взглянем в строчку формул.
Посмотрим, что в этому случае делает программа Excel — пройдём по шагам вычислений. На вкладке «Формулы» нажмём кнопку «Вычислить формулу».
В окне вычислений видно, что теперь программа извлекает значения из каждой ячейки массива, затем производит математическое действие и выводит результат. Минус — на такое извлечение, если данных много, можно потратить много времени.
Аналогично подсчитаем максимальную стоимость покупки. Используем формулу МАКС и передадим ей массив.
Настала очередь средней суммы покупки. Для округления будем использовать ЦЕЛОЕ (чтобы результат был без копеек) и СРЗНАЧ.
Готово. В этом случае даже получилось «экономнее» нежели в обычных формулах, так как для промежуточного итога нет своего столбца!
Как видно их примеров — у массивов есть свои плюсы и свои минусы. Не пробуйте удалять массив (если он содержится в диапазоне ячеек). Изменить только одну ячейку массива нельзя! Плюс — улучшаем безопасность, минус — приходится переделывать весь массив, если что-то пошло не так.
Если остались вопросы — посмотрите новое видео. Ну и по традиции — вам может понравиться статья про функцию ПЛТ. Всем удачи!
Источник: pcandlife.ru
Exceltip
Блог о программе Microsoft Excel: приемы, хитрости, секреты, трюки
Формулы массивов в Excel — синтаксис формул массивов и массивов констант
Формула массивов в Excel – это формула, которая используют в качестве входящего параметра целый массив, а не отдельную ячейку. Формулу массива можно рассматривать как множество обычных, упакованных в одну супер формулу. В сегодняшней статье мы познакомимся с синтаксисом формул массивов: от написания простейших до более мощных версий. Прежде, чем начать, давайте разберемся, что такое массив.
Что такое массив?
В Excel массив – это диапазон ячеек. Ниже приведены несколько примеров. Массивы в Excel бывают двухмерные и одномерные. Одномерные в свою очередь делятся на горизонтальные и вертикальные.
Когда мы говорим о формулах массива, мы подразумеваем, что это нормальная формула Excel (СУММ, МАКС, СЧЁТЕСЛИ…), но немного измененная, чтобы принять в качестве входных данных массив или набор массивов. Это то, что лежит в основе формул массива и делает его столь мощным.
Формула массива вводится определенным образом – простой ввод работать не будет. Давайте рассмотрим пример. Откройте пустой рабочий лист и введите несколько значений, как показано на рисунке. Теперь предположим, что вам необходимо определить адрес ячейки с наименьшим значением, для этого введите формулу, указанную ниже и нажмите сочетание клавиш Ctrl + Shift + Enter.
Результатом в этом случае будет адрес ячейки с наименьшим значением в данном диапазоне. Как вы можете увидеть, при обновлении данных в диапазоне, результат тоже меняется. Подобного эффекта можно также добиться с помощью обычной формулы =АДРЕС(ПОИСКПОЗ(МИН(A1:A9);A1:A9;0);1). Однако ж мы только начали изучение, в дальнейшем вы обнаружите, что некоторые вещи можно делать только с помощью формулы массива, либо с большим количеством обычных формул.
Части формул массивов в Excel
Формулы массива можно рассматривать как комбинацию массивов констант, оператора массива и диапазона массива. Воспринимайте их в качестве замены нескольких простых формул или как сокращенную формулу, в которой присутствует вся необходимая информация для проведения сложной операции. Таким образом формула массива использует массивы как часть аргументов. Внутренне она будет просматривать каждый массив как аргумент, выполняя при этом операции и генерируя единый результат.
(Прежде чем мы пойдем дальше, убедитесь, что при вводе формул массива, вы вводите Ctrl + Shift + Enter, а не обычный Enter, как при обычных формулах).
Массив констант в формулах массивов
Массив констант – это набор статических значений. Эти значения не ссылаются на другие ячейки или диапазоны. Поэтому они будут всегда одинаковыми независимо от изменений происходящих на листе.
Горизонтальный массив констант
Горизонтальный массив констант вводиться как последовательность чисел, разделенных точкой с запятой (;), заключенных в фигурные скобки. Например: <1;2;3;4;5>. Горизонтальные массивы могут быть использованы в качестве входных данных для формулы массива. Они также могут быть введены в таблицу, как показано ниже.
Вертикальный массив констант
В отличие от горизонтального, в вертикальном массиве констант значения разделяются двоеточием (:) и также заключаются в фигурные скобки. Например: <1:2:3:4:5>.
Операторы массива в формулах массивов
Оператор массива сообщает формуле, какую операцию необходимо совершить над массивами, предоставленными в качестве массива. К тому же, вы можете использовать операторы И (альтернативный вариант написания — *) и ИЛИ альтернативный вариант написания — +).
Оператор массива И
Оператор И возвращает значение ИСТИНА в случаях, когда все условия выражения возвращают значение ИСТИНА. Пример ниже показывает использование оператора массива И (*) между массивами:
Оператор массива ИЛИ
Оператор ИЛИ возвращает значение ИСТИНА, если хотя бы один из условий выражения возвращает значение ИСТИНА. Пример ниже показывает использование оператора массива ИЛИ (+) между массивами:
Что такое диапазон массива?
Диапазон массива вводиться точно также, как и обычная формула (например, A1:A10). Их не обязательно сразу же заключать в скобки (Например, =СУММ(ЕСЛИ((A1:A10)=10;10;»»)) ) или (=СУММ(ЕСЛИ((A1:A10=10);10;»»))). Но для упрощения отладки, я предпочитаю сразу установить скобки в формулах.
Синтаксис формул массивов
Возможно, вы уже получили кое-какое представление об этой части статьи. Все что вам нужно, чтобы написать формулу массива – это использовать в качестве аргументов массив и нажать сочетание клавиш Ctrl + Shift + Enter. Давайте рассмотрим некоторые основные моменты синтаксиса формул массивов.
Сортировка с помощью формулы массива
Скажем, у вас есть набор данных в ячейках D2:D10 и вы хотите отсортировать их в порядке возрастания. Вы уже наверное догадались, что нам понадобиться функция НАИМЕНЬШИЙ(), которая возвращает n-ое наименьшее значение и заданного диапазона. Нам также понадобиться диапазон, где мы будем производить вычисления.
Обычная функция НАИМЕНЬШИЙ для одной ячейки выглядит следующим образом =НАИМЕНЬШИЙ(D2:D10;1). Такая формула вернет нам наименьшее значение диапазона D2:D10. Но нам необходимо скопировать эту функцию во все остальные ячейки и внести изменения во второй аргумент, чтобы получить отсортированный список. Для начала выделим диапазон, в котором мы хотим увидеть список, затем вводим формулу в первую ячейку и жмем Ctrl + Shift + Enter. Формула будет скопирована на весь диапазон, результатом станет отсортированный список.
Поиск уникального значения, отвечающего определенным условиям
Предположим, мы хотим выяснить имя менеджера с наибольшими продажами. Вот где обнаруживается истинная мощь формул массивов. Ели бы мы использовали обычные формулы, нам понадобилось бы столько же строк, сколько менеджеров, если не больше. Однако мы можем сделать тоже самое в одну формулу массива =СМЕЩ(A1;МАКС(ЕСЛИ(СУММЕСЛИ((A2:A10);(A2:A10);(D2:D10))=МАКС(СУММЕСЛИ((A2:A10);(A2:A10);(D2:D10)));СТРОКА(A2:A10);»»))-1;0). То, что мы делаем здесь – это сравниваем сумму продаж конкретного менеджера с суммой продаж максимального менеджера. Если условие истинно, возвращает номер строки. Функция ЕСЛИ возвращает массив номеров строк, относящихся к менеджеру с наибольшим показателем продаж, в противном случае возвращается пустота. С помощью функции МАКС мы находим строку, где происходит последнее вхождение имени, а затем с помощью функции СМЕЩ возвращаем имя из этой строки.
Консолидация данных по более чем одному условию
Мы также можем использовать формулу массива для поиска суммы продаж менеджера с максимальными продажами. Функция ЕСЛИ возвращает массив отдельных сумм продаж менеджера совпадающего с менеджером с максимальными продажами, иначе 0. Затем мы используем функцию СУММ для суммирования всех этих значений массива.
Еще один пример консолидации данных по условию
Теперь попробуйте сами. Дайте мне сумму продаж всех записей, в которых 1) менеджер — Фёдор Абрамов И продукт Книги 2) Продажи >= 500. Подумайте минутку.
Мы можем достичь этого с помощью формулы массива =СУММ(ЕСЛИ(((A2:A10=»Фёдор Абрамов»)*(B2:B10=»Книги»))+((D2:D10>=500));D2:D10;0)). Так что же мы здесь сделали? Мы проверили три условия – первые два были скомбинированы с помощью оператора И (*) и третье было добавлено с помощью оператора ИЛИ (+). В результате получилась структурированная формула массива, где были указаны все три условия в качестве аргумента функции ЕСЛИ. Функция ЕСЛИ в свою очередь генерирует массив со значениями из четвертого столбца, когда оно принимает значение ИСТИНА и 0, если ЛОЖЬ. Результат, конечно, представляет собой сумму продаж отвечающим всем трем, указанным выше, условиям.
Вот некоторые из основных примеров использования формул массива. Вы можете скачать рабочую книгу с некоторыми примерами формул массива, которые предлагают мощный способ работы с данными и при разумном использовании может значительно сэкономить время.
Источник: exceltip.ru
Массивы и формулы массива в Excel.
Для начала следует понимать, что такое массив и какие массивы бывают.
Массивом называют группу данных объединенных (сгруппированных) в одну структуру (группу)
В «Excel» массивы подразделяют на три типа в зависимости от структуры расположения данных в таблице:
Горизонтальный одномерный (линейный) массив – массив, в котором данные расположены горизонтально в одну строку.
Вертикальный одномерный (линейный) массив – массив, в котором данные расположены вертикально в один столбец.
Двумерный массив или матрица представляет собой таблицу прямоугольной формы, состоящую из нескольких строк и столбцов.
Формулы (функции) массивов.
Для работы с массивами в «Эксель» предусмотрены специальные формулы – формулы массивов.
Формулы массивов в свою очередь классифицируются на формулы, которые выводят (рассчитывают) единичный результат, и формулы которые рассчитывают и выдают результат в виде массива (матрицы).
Для расчета данных в массивах могут применяться и обычные функции. При нажатии клавиш Ctrl + Shift + Enter обычная формула выделяется фигурными скобками и становится формулой массива.
Рассмотрим в качестве примера смету состоящую из столбцов «Количество», «Трудозатраты на единицу», «Стоимость одного чел часа».
Смета на проведение работ в Excel. | |||
Вид работ | Количество | Трудозатраты на единицу | Стоимость одного чел часа |
Прокладка кабеля, м | 25 | 0,5 | 123 |
Укладка тротуарной плитки, м² | 45 | 0,125 | 244 |
Покраска металлических поверхностей, м² | 4 | 0,2 | 233 |
Монтаж дверного замка, шт. | 12 | 0,8 | 40 |
Итого: | 3480,4 |
Чтобы получить полную стоимость работ следует перемножить количество, стоимость и трудозатраты на единицы для каждого вида работ, а потом сложить затраты на каждый вид работ. Сделать это можно в несколько действий по порядку, а можно написать одну единственную функцию массива: и нажать сочетание клавиш «Ctrl + Shift + Enter», чтобы «Excel» распознал формулу массив.
Рассмотрим функцию массива ТРАНСП(). Эта функция полностью относится к функциям массива и производить транспонирование выделенного массива, то есть меняет местами столбцы и строки (переворачивает таблицу). Чтобы использовать данную функцию следует:
- Выделить диапазон, в который планируете транспонировать таблицу (если в исходной таблице четыре столбца и шесть строк, то выделяем шесть столбцов и четыре строки);
- В строке функций пишем =ТРАНСП();
- В скобках указать массив, который вы хотите транспонировать (перевернуть) и нажать клавишу «ENTER».
Источник: ruexcel.ru
Управление массивами в Microsoft Excel
Во время работы с таблицами Excel довольно часто приходится оперировать с целыми диапазонами данных. При этом некоторые задачи подразумевают, что вся группа ячеек должна быть преобразована буквально в один клик. В Экселе имеются инструменты, которые позволяют проводить подобные операции. Давайте выясним, как можно управлять массивами данных в этой программе.
Операции с массивами
Массив – это группа данных, которая расположена на листе в смежных ячейках. По большому счету, любую таблицу можно считать массивом, но не каждый из них является таблицей, так как он может являться просто диапазоном. По своей сущности такие области могут быть одномерными или двумерными (матрицы). В первом случае все данные располагаются только в одном столбце или строке.
Во втором — в нескольких одновременно.
Кроме того, среди одномерных массивов выделяют горизонтальный и вертикальный тип, в зависимости от того, что они собой представляют – строку или столбец.
Нужно отметить, что алгоритм работы с подобными диапазонами несколько отличается от более привычных операций с одиночными ячейками, хотя и общего между ними тоже много. Давайте рассмотрим нюансы подобных операций.
Создание формулы
Формула массива – это выражение, с помощью которого производится обработка диапазона с целью получения итогового результата, отображаемого цельным массивом или в одной ячейке. Например, для того, чтобы умножить один диапазон на второй применяют формулу по следующему шаблону:
Над диапазонами данных можно также выполнять операции сложения, вычитания, деления и другие арифметические действия.
Координаты массива имеют вид адресов первой её ячейки и последней, разделенные двоеточием. Если диапазон двумерный, то первая и последняя ячейки расположены по диагонали друг от друга. Например, адрес одномерного массива может быть таким: A2:A7.
А пример адреса двумерного диапазона выглядит следующим образом: A2:D7.
-
Чтобы рассчитать подобную формулу, нужно выделить на листе область, в которую будет выводиться результат, и ввести в строку формул выражение для вычисления.
Изменение содержимого массива
Если вы в дальнейшем попытаетесь удалить содержимое или изменить любую из ячеек, которая расположена в диапазоне, куда выводится результат, то ваше действие окончится неудачей. Также ничего не выйдет, если вы сделаете попытку отредактировать данные в строке функций. При этом появится информационное сообщение, в котором будет говориться, что нельзя изменять часть массива. Данное сообщение появится даже в том случае, если у вас не было цели производить какие-либо изменения, а вы просто случайно дважды щелкнули мышью по ячейке диапазона.
Если вы закроете, это сообщение, нажав на кнопку «OK», а потом попытаетесь переместить курсор с помощью мышки, или просто нажмете кнопку «Enter», то информационное сообщение появится опять. Не получится также закрыть окно программы или сохранить документ. Все время будет появляться это назойливое сообщение, которое блокирует любые действия. А выход из ситуации есть и он довольно прост
-
Закройте информационное окно, нажав на кнопку «OK».
Но что делать, если действительно нужно удалить или изменить формулу массива? В этом случае следует выполнить нижеуказанные действия.
-
Для изменения формулы выделите курсором, зажав левую кнопку мыши, весь диапазон на листе, куда выводится результат. Это очень важно, так как если вы выделите только одну ячейку массива, то ничего не получится. Затем в строке формул проведите необходимую корректировку.
-
Для удаления формулы массива нужно точно так же, как и в предыдущем случае, выделить курсором весь диапазон ячеек, в котором она находится. Затем нажать на кнопку Delete на клавиатуре.
Функции массивов
Наиболее удобно в качестве формул использовать уже готовые встроенные функции Excel. Доступ к ним можно получить через Мастер функций, нажав кнопку «Вставить функцию» слева от строки формул. Или же во вкладке «Формулы» на ленте можно выбрать одну из категорий, в которой находится интересующий вас оператор.
После того, как пользователь в Мастере функций или на ленте инструментов выберет наименование конкретного оператора, откроется окно аргументов функции, куда можно вводить исходные данные для расчета.
Правила ввода и редактирования функций, если они выводят результат сразу в несколько ячеек, те же самые, что и для обычных формул массива. То есть, после ввода значения обязательно нужно установить курсор в строку формул и набрать сочетание клавиш Ctrl+Shift+Enter.
Оператор СУММ
Одной из наиболее востребованных функций в Экселе является СУММ. Её можно применять, как для суммирования содержимого отдельных ячеек, так и для нахождения суммы целых массивов. Синтаксис этого оператора для массивов выглядит следующим образом:
Данный оператор выводит результат в одну ячейку, а поэтому для того, чтобы произвести подсчет, после внесения вводных данных достаточно нажать кнопку «OK» в окне аргументов функции или клавишу Enter, если ввод выполнялся вручную.
Оператор ТРАНСП
Функция ТРАНСП является типичным оператором массивов. Она позволяет переворачивать таблицы или матрицы, то есть, менять строки и столбцы местами. При этом она использует исключительно вывод результата в диапазон ячеек, поэтому после введения данного оператора обязательно нужно применять сочетание Ctrl+Shift+Enter. Также нужно отметить, что перед введением самого выражения нужно выделить на листе область, у которой количество ячеек в столбце будет равно числу ячеек в строке исходной таблицы (матрицы) и, наоборот, количество ячеек в строке должно равняться их числу в столбце исходника. Синтаксис оператора следующий:
Оператор МОБР
Функция МОБР позволяет производить вычисление обратной матрицы. Все правила ввода значений у этого оператора точно такие же, как и у предыдущего. Но важно знать, что вычисление обратной матрицы возможно исключительно в том случае, если она содержит равное количество строк и столбцов, и если её определитель не равен нулю. Если применять данную функцию к области с разным количеством строк и столбцов, то вместо корректного результата на выходе отобразится значение «#ЗНАЧ!». Синтаксис у этой формулы такой:
Для того чтобы рассчитать определитель, применяется функция со следующим синтаксисом:
Как видим, операции с диапазонами помогают сэкономить время при вычислениях, а также свободное пространство листа, ведь не нужно дополнительно суммировать данные, которые объединены в диапазон, для последующей работы с ними. Все это выполняется «на лету». А для преобразования таблиц и матриц только функции массивов и подходят, так как обычные формулы не в силах справиться с подобными задачами. Но в то же время нужно учесть, что к подобным выражениям применяются дополнительные правила ввода и редактирования.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Источник: lumpics.ru
Описание ограничений для работы с массивами в Excel
Описание
В версиях Microsoft Excel, перечисленных в разделе “информация в этой статье применима к”, в разделе “требования к расчету” перечислены ограничения для работы с массивом. В этой статье описываются ограничения для массивов в Excel.
Дополнительные сведения
В Excel массивы на листах ограничены доступной оперативной памятью, общим количеством формул массива и правилом “весь столбец”.
доступная память;
Версии Excel, перечисленные в разделе “информация в этой статье применима к”, не накладывают ограничение на размер массивов листов. Вместо этого доступ к памяти ограничивается только объемом доступной памяти на вашем компьютере. Таким образом, вы можете создавать очень большие массивы, содержащие сотни тысяч ячеек.
Правило “весь столбец”
Несмотря на то, что в Excel можно создавать очень большие массивы, невозможно создать массив, использующий целый столбец или несколько столбцов ячеек. Так как перерасчет формулы массива, использующей весь столбец ячеек, занимает много времени, Excel не позволяет создавать этот тип массива в формуле.
В столбце в Microsoft Office Excel 2003 и более ранних версиях Excel есть 65 536 ячеек. В столбце в Microsoft Office Excel 2007 есть 1 048 576 ячеек.
Максимальные формулы массива
В Excel 2003 и более ранних версиях Excel один лист может содержать не более 65 472 формул массива, ссылающихся на другой лист. Если вы хотите использовать больше формул, разделите их на несколько листов, чтобы на один лист было менее 65 472 ссылок.
Например, на листе Sheet1 книги можно создать следующие элементы:
- 65 472 формулы массива, которые ссылаются на Лист2
- 65 472 формулы массива, ссылающихся на Sheet3
- 65 472 формулы массива, ссылающихся на Sheet4
Если вы попытаетесь создать более 65 472 формул массива, ссылающихся на определенный лист, формулы массива, введенные после формулы массива с номером 65 472, могут исчезнуть при вводе.
Примеры формул массива
Ниже приведен список примеров формул массивов. Чтобы использовать эти примеры, создайте новую книгу, а затем введите каждую формулу как формулу массива. Для этого введите формулу в строку формул, а затем нажмите клавиши CTRL + SHIFT + ВВОД, чтобы ввести формулу.
Excel 2007
A1: = SUM (ЕСЛИ (B1: B1048576 = 0, 1, 0))
Формула в ячейке a1 возвращает результат 1048576. Это правильный результат.
A2: = SUM (ЕСЛИ (Б:Б = 0, 1, 0))
Формула в ячейке A2 возвращает результат 1048576. Это правильный результат.
A3: = SUM (ЕСЛИ (B1: J1048576 = 0, 1, 0))
Формула в ячейке A3 возвращает результат 9437184. Это правильный результат.
Вычисление формулы может занять много времени, так как формула проверяет более 1 000 000 ячеек.
A4: = SUM (ЕСЛИ (Б:Ж = 0, 1, 0))
Формула в ячейке A4 возвращает результат 9437184. Это правильный результат.
Вычисление формулы может занять много времени, так как формула проверяет более 1 000 000 ячеек.
A5: = SUM (ЕСЛИ (B1: DD1048576 = 0, 1, 0))
При вводе этой формулы в ячейку A5 может появиться одно из следующих сообщений об ошибке:
Excel исчерпал ресурсы при попытке вычислить одну или несколько формул. В результате эти формулы невозможно оценить.
Чтобы определить уникальный номер, связанный с получаемым сообщением, нажмите клавиши CTRL + SHIFT + I. В правом нижнем углу этого сообщения отображается следующее число:
101758
В этом случае размер массива листа слишком велик для доступной памяти. Поэтому не удается вычислить формулу.
Кроме того, Excel может перестать отвечать на запросы в течение нескольких минут. Это связано с тем, что в других формулах, которые вы ввели, необходимо пересчитать результаты.
После пересчета результатов Excel реагирует ожидаемым образом. Формула в ячейке A5 возвращает значение 0 (ноль).
Excel 2003 и более ранние версии Excel
A1: = SUM (ЕСЛИ (B1: B65535 = 0, 1, 0))
Формула в ячейке a1 возвращает результат 65535. Это правильный результат.
A2: = SUM (ЕСЛИ (Б:Б = 0, 1, 0))
Формула в ячейке a2 Возвращает #NUM! ошибка, так как формула массива ссылается на целый столбец ячеек.
A3: = SUM (ЕСЛИ (B1: J65535 = 0, 1, 0))
Формула в ячейке A3 возвращает результат 589815. Это правильный результат.
Вычисление формулы может занять много времени, так как формула выполняет проверку почти 600 000 ячеек.
A4: = SUM (ЕСЛИ (Б:Ж = 0, 1, 0))
Как и формула в ячейке A2, формула в ячейке A4 Возвращает #NUM! ошибка, так как формула массива ссылается на целый столбец ячеек.
A5: = SUM (ЕСЛИ (B1: DD65535 = 0, 1, 0))
При вводе формулы в ячейке A5 может появиться одно из следующих сообщений об ошибке:
Недостаточно памяти. Продолжить без отмены?
Недостаточно памяти.
В этом случае размер массива листа слишком велик для доступной памяти. Поэтому не удается вычислить формулу.
Кроме того, Excel может перестать отвечать на запросы в течение нескольких минут. Это связано с тем, что в других формулах, которые вы ввели, необходимо пересчитать результаты.
После пересчета результатов Excel реагирует ожидаемым образом. Формула в ячейке A5 возвращает значение 0 (ноль).
Обратите внимание на то, что ни одна из этих формул не работает в более ранних версиях Excel. Это связано с тем, что массивы, создаваемые формулами, полностью превышают максимальные ограничения в более ранних версиях Excel. Ниже приведен список некоторых функций Excel, использующих массивы.
- ЛИНЕЙН ()
- МДЕТЕРМ ()
- МИНВЕРСЕ ()
- ММУЛТ ()
- SUM (ЕСЛИ ())
- SUMPRODUCT ()
- ТРАНСПОНИРОВАТЬ ()
- ТЕНДЕНЦИЯ ()
Следующие факты о функциях удобно запомнить.
- Если какие бы то ни было ячейки массива пусты или содержат текст, МИНВЕРСЕ возвращает #VALUE! значение ошибки.
- МИНВЕРСЕ также возвращает #VALUE! значение ошибки, если массив не имеет равное количество строк и столбцов.
- МИНВЕРСЕ возвращает #VALUE! ошибка, если возвращаемый массив превышает 52 столбцов по 52 строк.
- Функция ММУЛТ возвращает #VALUE! Если выходные данные превышают 5460 ячеек.
- Функция МДЕТЕРМ возвращает #VALUE! значение, если размер возвращаемого массива превышает 73 строк по 73 столбцам.
Источник: docs.microsoft.com
Формулы массива в Excel
Терминология
Под массивом обычно понимают набор данных, объединенных в группу. Массивы бывают одномерные (элементы массива образуют строку или столбец) или двумерные (матрица). Легко сообразить, что почти в любой таблице Excel при желании можно найти один или несколько таких массивов:
Формулы массива в Excel – это специальные формулы для обработки данных из таких массивов. Формулы массива делятся на две категории – те, что возвращают одно значение и те, что дают на выходе целый набор (массив) значений. Рассмотрим их на простых примерах.
Пример 1. Классика жанра – товарный чек
Задача: рассчитать общую сумму заказа. Если идти классическим путем, то нужно будет добавить столбец, где перемножить цену и количество, а потом взять сумму по этому столбцу. Если же применить формулу массива, то все будет гораздо красивее:
- выделяем ячейку С7
- вводим с клавиатуры =СУММ(
- выделяем диапазон B2:B5
- вводим знак умножения (звездочка)
- выделяем диапазон C2:C5 и закрываем скобку функции СУММ – в итоге должно получиться так:
Т.е. Excel произвел попарное умножение элементов массивов B2:B5 и C2:C5 и образовал новый массив стоимостей (в памяти компьютера), а затем сложил все элементы этого нового массива.
Обратите внимание на фигурные скобки, появившиеся в формуле – отличительный признак формулы массива. Вводить их вручную с клавиатуры бесполезно – они автоматически появляются при нажатии Ctrl + Shift + Enter.
Пример 2. Разрешите Вас. транспонировать?
При работе с таблицами часто возникает необходимость поменять местами строки и столбцы, т.е. развернуть таблицу на бок, чтобы данные, которые раньше шли по строке, теперь располагались в столбцах и наоборот. В математике такая операция называется транспонированием. При помощи формулы массива и функции ТРАНСП (TRANSPOSE) это делается на раз.
Допустим, имеем двумерный массив ячеек, который хотим транспонировать.
- Выделяем диапазон ячеек для размещения транспонированной таблицы. Поскольку исходный массив ячеек был 8 строк на 2 столбца, то надо выделить диапазон пустых ячеек размером 2 строки на 8 столбцов.
- вводим функцию транспонирования =ТРАНСП(
- в качестве аргумента функции выделяем наш массив ячеек A1:B8
жмем Ctrl + Shift + Enter и получаем “перевернутый массив” в качестве результата:
Редактирование формулы массива
Если формула массива расположена не в одной ячейке (как в Примере 1), а в нескольких ячейках (как в Примере 2), то Excel не позволит редактировать или удалить одну отдельно взятую формулу (например в ячейке D10) и выдаст предупреждающее сообщение Невозможно изменить часть массива.
Для редактирования формулы массива необходимо выделить весь диапазон (A10:H11 в нашем случае) и изменить формулу в строке формул (или нажав F2). Затем необходимо повторить ввод измененной формулы массива, нажав сочетание клавиш Ctrl + Shift + Enter.
Excel также не позволит свободно перемещать ячейки, входящие в формулу массива или добавлять новые строки-столбцы-ячейки в диапазон формулы массива (т.е. в диапазон A10:H11 в нашем случае)
Пример 3. Таблица умножения
Вспомните детство, школу, свою тетрадку по математике. На обороте тетради на обложке было что? Таблица умножения вот такого вида:
При помощи формул массива она вся делается в одно движение:
- выделяем диапазон B2:K11
- вводим формулу =A2:A11*B1:K1
- жмем Ctrl + Shift + Enter, чтобы Excel воспринял ее как формулу массива
и получаем результат:
Пример 4. Выборочное суммирование
Посмотрите как при помощи одной формулы массива красиво и легко выбираются данные по определенному товару и заказчику:
В данном случае формула массива синхронно пробегает по всем элементам диапазонов C3:C21 и B3:B21, проверяя, совпадают ли они с заданными значениями из ячеек G4 и G5. Если совпадения нет, то результат равенства ноль, если совпадение есть, то единица. Таким образом суммы всех сделок, где заказчик не ANTON и товар не Boston Crab Meat умножаются на ноль и суммируются только нужные заказы.
Источник: www.planetaexcel.ru