Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Еще…Меньше
Формулы массива — это мощные формулы, позволяющие выполнять сложные вычисления, которые часто не могут выполняться с помощью стандартных функций листа. Они также называются формулами CTRL-SHIFT-ENTER или CSE, так как для их ввода необходимо нажать клавиши CTRL+SHIFT+ВВОД. Формулы массива можно использовать для выполнения на первый взгляд невозможного, например
-
Подсчет количества символов в диапазоне ячеек.
-
Суммирует числа, соответствующие определенным условиям, например наименьшие значения в диапазоне или числа, которые находятся между верхней и нижней границами.
-
Суммирование всех n-х значений в диапазоне значений.
Excel содержит два типа формул массива: формулы массива, которые выполняют несколько вычислений для создания одного результата и формул массива, которые вычисляют несколько результатов. Некоторые функции возвращают массивы значений или требуют массив значений в качестве аргумента. Дополнительные сведения см. в руководствах и примерах формул массива.
Примечание: Если у вас есть текущая версия Microsoft 365, можно просто ввести формулу в левую верхнюю ячейку выходного диапазона, а затем нажать клавишу ВВОД, чтобы подтвердить формулу как формулу динамического массива. Иначе формулу необходимо вводить с использованием прежней версии массива, выбрав диапазон вывода, введя формулу в левой верхней ячейке диапазона и нажав клавиши CTRL+SHIFT+ВВОД для подтверждения. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.
Этот тип формулы позволяет упростить модель листа благодаря замене нескольких отдельных формул.
-
Щелкните ячейку, в которую нужно ввести формулу массива.
-
Введите необходимую формулу.
В формулах массива используется синтаксис обычных формул. Все они начинаются со знака равенства (=), и вы можете использовать любую из встроенных функций Excel в формулах массива.
Например, эта формула вычисляет общее значение массива цен на акции и общих папок и помещает результат в ячейку рядом с «Итоговая стоимость».
Формула сначала умножает общие папки (ячейки B2 – F2) на их цены (ячейки B3 – F3), а затем добавляет эти результаты, чтобы создать общий итог в 35 525. Это пример формулы массива с одной ячейкой, так как она находится только в одной ячейке.
-
Нажмите клавишу ВВОД (если у вас есть текущая Microsoft 365 подписки); в противном случае нажмите клавиши CTRL+SHIFT+ВВОД.
При нажатии клавиш CTRL+SHIFT+ВВОД Excel автоматически вставляет формулу между { } (пара открывающих и закрывающих фигурных скобок).
Примечание: Если у вас есть текущая версия Microsoft 365, можно просто ввести формулу в левую верхнюю ячейку выходного диапазона, а затем нажать клавишу ВВОД, чтобы подтвердить формулу как формулу динамического массива. Иначе формулу необходимо вводить с использованием прежней версии массива, выбрав диапазон вывода, введя формулу в левой верхней ячейке диапазона и нажав клавиши CTRL+SHIFT+ВВОД для подтверждения. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.
Чтобы вычислить несколько результатов с помощью формулы массива, введите массив в диапазон ячеек с одинаковым количеством строк и столбцов, которые будут использоваться в аргументах массива.
-
Выделите диапазон ячеек, в который нужно ввести формулу массива.
-
Введите необходимую формулу.
В формулах массива используется синтаксис обычных формул. Все они начинаются со знака равенства (=), и вы можете использовать любую из встроенных функций Excel в формулах массива.
В следующем примере формула многократно использует общие ресурсы по цене в каждом столбце, а формула находится в выделенных ячейках в строке 5.
-
Нажмите клавишу ВВОД (если у вас есть текущая Microsoft 365 подписки); в противном случае нажмите клавиши CTRL+SHIFT+ВВОД.
При нажатии клавиш CTRL+SHIFT+ВВОД Excel автоматически вставляет формулу между { } (пара открывающих и закрывающих фигурных скобок).
Примечание: Если у вас есть текущая версия Microsoft 365, можно просто ввести формулу в левую верхнюю ячейку выходного диапазона, а затем нажать клавишу ВВОД, чтобы подтвердить формулу как формулу динамического массива. Иначе формулу необходимо вводить с использованием прежней версии массива, выбрав диапазон вывода, введя формулу в левой верхней ячейке диапазона и нажав клавиши CTRL+SHIFT+ВВОД для подтверждения. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.
Если вам нужно включить новые данные в формулу массива, см. раздел «Развернуть формулу массива». Вы также можете попробовать:
-
Правила для изменения формул массива (они могут быть нестрогой)
-
Удалите формулу массива (вы также нажимаете клавиши CTRL+SHIFT+ВВОД)
-
Использование констант массива в формулах массива (они могут быть удобными)
-
Именуйте константу массива (они могут упростить использование констант)
Если вы хотите поэксментировать с константами массива, прежде чем опробовать их с собственными данными, вы можете использовать здесь примеры данных.
В книге ниже показаны примеры формул массива. Чтобы лучше работать с примерами, скачайте книгу на компьютер, щелкнув значок Excel в правом нижнем углу и открыв ее в Excel настольной программе.
Скопируйте приведенную ниже таблицу и вставьте ее Excel ячейку A1. Обязательно выделите ячейки E2:E11, введите формулу =C2:C11*D2:D11 и нажмите клавиши CTRL+SHIFT+ВВОД, чтобы сделать ее формулой массива.
Продавец |
Тип автомобиля |
Число проданных единиц |
Цена за единицу |
Итоги продаж |
---|---|---|---|---|
Зуева |
Седан |
5 |
2200 |
=C2:C11*D2:D11 |
Купе |
4 |
1800 |
||
Егоров |
Седан |
6 |
2300 |
|
Купе |
8 |
1700 |
||
Еременко |
Седан |
3 |
2000 |
|
Купе |
1 |
1600 |
||
Климов |
Седан |
9 |
2150 |
|
Купе |
5 |
1950 |
||
Шашков |
Седан |
6 |
2250 |
|
Купе |
8 |
2000 |
Создание формулы массива с несколькими ячейками
-
В образце книги выделите ячейки E2–E11. Эти ячейки будут содержать результаты.
Перед вводом формулы всегда выделите ячейку или ячейки, которые будут содержать результаты.
И всегда это означает 100 процентов времени.
-
Введите эту формулу. Чтобы ввести его в ячейку, просто начните вводить текст (нажмите знак равенства), и формула появится в последней выбранной ячейке. Вы также можете ввести формулу в строке формул:
=C2:C11*D2:D11
-
Нажмите клавиши CTRL+SHIFT+ВВОД.
Создание формулы массива с одной ячейкой
-
В образце книги щелкните ячейку B13.
-
Введите эту формулу с помощью любого из методов из шага 2 выше:
=СУММ(C2:C11*D2:D11)
-
Нажмите клавиши CTRL+SHIFT+ВВОД.
Формула умножает значения в диапазонах ячеек C2:C11 и D2:D11, а затем добавляет результаты для вычисления общего итога.
В Excel в Интернете вы можете просмотреть формулы массива, если они уже есть в открытой книге. Но вы не сможете создать формулу массива в этой версии Excel, нажав клавиши CTRL+SHIFT+ВВОД, которые вставляют формулу между парой открывающих и закрывающих фигурных скобок ({ }). Ввод фигурных скобок вручную также не превнося формулу в формулу массива.
Если у вас есть Excel, нажмите кнопку «Открыть в Excel«, чтобы открыть книгу и создать формулу массива.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Нужна дополнительная помощь?
Вводная статья для тех, кто никогда не использовал формулы массива.
Без формул массива (array formulas ) можно обойтись, т.к. это просто сокращенная запись группы однотипных формул. Однако, у формул массива есть серьезное преимущество: одна такая формула может заменить один или несколько столбцов с обычными формулами.
Например, можно найти сумму квадратов значений из диапазона А2:A12 , просто записав в ячейке B14 формулу =СУММ(A2:A12^2) . Для сравнения: чтобы найти сумму квадратов, используя обычные формулы, нам потребуется дополнительный столбец для вычисления квадратов значений и одна ячейка для их суммирования (см. файл примера или диапазон B 2 :B13 на рисунке ниже).
В отличие от ввода обычных формул, после ввода формулы массива нужно нажать вместо ENTER комбинацию клавиш CTRL+SHIFT+ENTER (поэтому, иногда, формулы массива также называются формулами CSE — это первые буквы от названия клавиш, используемых для ввода C trl, S hift, E nter). После этого формула будет обрамлена в фигурные скобки { } (их не вводят с клавиатуры, они автоматически появляются после нажатия CTRL+SHIFT+ENTER ). Это обрамление показано на рисунке выше (см. Строку формул ).
Если бы мы нажали просто ENTER , то получили бы сообщение об ошибке #ЗНАЧ!, возникающую при использовании неверного типа аргумента функции, т.к. функция СУММ() принимает в качестве аргумента только диапазон ячеек (или формулу, результатом вычисления которой является диапазон, или константы). В нашем случае мы в качестве аргумента ввели не диапазон, а некое выражение, которое еще нужно вычислить перед суммированием, поэтому и получили ошибку.
Чтобы глубже понять формулы массива проведем эксперимент:
- выделим ячейку B13 , содержащую обычную формулу =СУММ($B$2:$B$12) ;
- в C троке формул выделим аргумент функции СУММ() , т.е. $B$2:$B$12 ;
- нажмем клавишу F9 , т.е. вычислим, выделенную часть формулы;
- получим {1:4:9:16:25:36:49:64:81:100:121} – массив квадратов значений из столбца В . Массив – это просто набор неких элементов (значений).
Т.е. обычная функция СУММ() в качестве аргумента получила некий массив (или точнее ссылку на него).Теперь проведем тот же эксперимент с формулой массива:
- выделим ячейку, содержащую формулу массива =СУММ($A$2:$A$12^2) ;
- в строке формул выделим аргумент функции СУММ() , т.е. $A$2:$A$12^2 ;
- нажмем клавишу F9 , т.е. вычислим, выделенную часть формулы;
- получим {1:4:9:16:25:36:49:64:81:100:121} – тот же массив, что и в первом случае.
Т.е. нажатие CTRL+SHIFT+ENTER заставило EXCEL перед суммированием произвести промежуточные вычисления с диапазоном ячеек (с массивом содержащихся в нем значений). Для самой функции СУММ() ничего не изменилось – она получила тот же массив, только предварительно вычисленный, а не прямо из диапазона ячеек, как в случае с обычной формулой. Понятно, что вместо функции СУММ() в формуле массива может быть использована любая другая функция MS EXCEL: СРЗНАЧ() , МАКС() , НАИБОЛЬШИЙ() и т.п.
Вышеприведенный пример иллюстрирует использование функции массива возвращающей единственное значение, т.е. результат может быть выведен в одной ячейке. Это достигается использованием функций способных «свернуть» вычисленный массив до одного значения ( СУММ() , СРЗНАЧ() , МАКС() ). Примеры таких функций массива приведены в статье Формулы массива, возвращающие одно значение .
Формулы массива также могут возвращать сразу несколько значений. Понятно, что для того чтобы отобразить такой результат необходимо задействовать целый диапазон ячеек. Примеры таких функций приведены в статье Формулы массива, возвращающие несколько значений .
Преимущества и недостатки формул массива рассмотрены в одноименной статье Формулы массива. Преимущества и недостатки .
В файле примера также приведено решение данной задачи функцией СУММПРОИЗВ() , которая зачастую не требует введения ее как формулы массива: =СУММПРОИЗВ($A$2:$A$12^2)
Здесь, при вводе формулы СУММПРОИЗВ() нажимать CTRL+SHIFT+ENTER необязательно.
ПРИМЕЧАНИЕ : При создании Именованных формул и правил Условного форматирования формулы массива нельзя ввести нажимая CTRL+SHIFT+ENTER . Эти формулы вводятся только в ячейки листа. Однако, если формуле массива присвоить Имя , то EXCEL «сообразит», что нужно с ней нужно делать. Например, если формуле =СУММ($A$2:$A$12^2) присвоить имя Сумма_квадратов, а затем в ячейке указать =Сумма_квадратов , то получим правильный результат.
Терминология
Под массивом обычно понимают набор данных, объединенных в группу. Массивы бывают одномерные (элементы массива образуют строку или столбец) или двумерные (матрица). Легко сообразить, что почти в любой таблице Excel при желании можно найти один или несколько таких массивов:
Формулы массива в Excel — это специальные формулы для обработки данных из таких массивов. Формулы массива делятся на две категории — те, что возвращают одно значение и те, что дают на выходе целый набор (массив) значений. Рассмотрим их на простых примерах…
Пример 1. Классика жанра — товарный чек
Задача: рассчитать общую сумму заказа. Если идти классическим путем, то нужно будет добавить столбец, где перемножить цену и количество, а потом взять сумму по этому столбцу. Если же применить формулу массива, то все будет гораздо красивее:
- выделяем ячейку С7
- вводим с клавиатуры =СУММ(
- выделяем диапазон B2:B5
- вводим знак умножения (звездочка)
- выделяем диапазон C2:C5 и закрываем скобку функции СУММ — в итоге должно получиться так:
- чтобы Excel воспринял нашу формулу как формулу массива жмем не Enter, как обычно, а Ctrl + Shift + Enter
Вуаля!
Т.е. 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 умножаются на ноль и суммируются только нужные заказы.
Ссылки по теме
- Формула массива для извлечения непустых ячеек из диапазона
- Формула массива для извлечения уникальных ячеек из диапазона
- Формула массива для извлечения данных из списка (многоразовый ВПР)
Содержание
- Ctrl Shift Войти в Excel — Выполнение расчетов по формулам массива
- Excel Ctrl Shift-Enter
- Объяснение Ctrl Shift-Enter в Excel
- Как использовать Ctrl Shift-Enter в Excel?
- Примеры Ctrl Shift-Enter в Excel
- Пример № 1 — Определить сумму
- Пример №2. Определение суммы с использованием условия
- Пример № 3 — Определение обратной матрицы
- То, что нужно запомнить
- Рекомендуемые статьи
- Формулы массива в EXCEL. Знакомство
- Create an array formula
Ctrl Shift Войти в Excel — Выполнение расчетов по формулам массива
Ctrl Shift-Enter в Excel (Содержание)
- Объяснение Ctrl Shift-Enter в Excel
- Примеры Excel Control Shift-Enter
Excel Ctrl Shift-Enter
Ctrl Shift-Enter является одним из ярлыков, используемых в Excel для выполнения расчетов с формулами массива. Он поддерживает в выполнении сложных расчетов с использованием стандартных функций Excel. Он широко используется в формулах массива для применения функций и формул к набору данных. Совместное использование Ctrl Shift-Enter помогает конвертировать данные в формат массива, состоящий из нескольких значений данных в Excel. Он также поддерживает различие между обычной формулой и формулой массива. Благодаря этому ярлыку есть два основных преимущества, таких как работа с набором значений за раз, а также возврат нескольких значений за раз.
Объяснение Ctrl Shift-Enter в Excel
- Прежде чем использовать комбинацию клавиш CTRL SHIFT-ENTER, нам нужно больше узнать о массивах. Массивы — это набор данных, включающий текстовые и числовые значения в нескольких строках и столбцах или только в одной строке и столбце. Например, Array = (15, 25, -10, 24).
- Чтобы ввести вышеуказанные значения в массив, нам нужно ввести CTRL SHIFT + ENTER после выбора диапазона ячеек. В результате получается массив Array = (= (15, 25, -10, 24)).
- Как показано выше, фигурные скобки заключаются в формулу, приводя диапазон ячеек в одном горизонтальном массиве. Это сочетание клавиш работает в разных версиях Excel, включая 2007, 2010, 2013 и 2016 годы.
- CTRL SHIFT-ENTER также работает для вертикальных и многомерных массивов в Excel. Этот ярлык работает для различных функций, которые требуют использования данных в диапазоне ячеек. Он эффективно используется в различных операциях, таких как определение суммы и выполнение умножения матриц.
Как использовать Ctrl Shift-Enter в Excel?
CTRL SHIFT-ENTER используется во многих приложениях в Excel.
Вы можете скачать этот шаблон CTRL Shift-Enter Excel здесь — CTRL Shift-Enter Excel шаблон
- Создание формулы массива в матричных операциях, таких как умножение.
- Создание формулы массива при определении суммы множества значений.
- Замена сотен формул только одной формулой массива или суммирование диапазона данных, который соответствует определенным критериям или условиям.
- Подсчет количества символов или значений в диапазоне данных в Excel.
- Суммирование значений, представленных в каждом n-м столбце или строке в пределах нижней и верхней границ.
- Выполнение задачи по созданию простых наборов данных в короткие сроки.
- Расширение формулы массива до нескольких ячеек.
- Определение среднего, минимального, максимального, агрегированного и массива выражений.
- Возврат результатов в несколько ячеек с использованием формул массива.
- Использование CTRL SHIFT-ENTER в функциях IF.
Примеры Ctrl Shift-Enter в Excel
Ниже приведены примеры управления Excel Shift-Enter.
Пример № 1 — Определить сумму
Этот пример иллюстрирует использование Ctrl SHIFT-ENTER при расчете суммы продаж, созданных для разных продуктов. Следующие данные рассматриваются для этого примера.
Шаг 1: Поместите курсор в пустую ячейку, где вы хотите рассчитать общую сумму продаж продукта.
Шаг 2: введите формулу как сумма = сумма (D6: D11 * E6: E11), как показано на рисунке ниже.
Шаг 3: После ввода формулы нажмите CTRL SHIFT-ENTER, чтобы преобразовать общую формулу в формулу массива.
Шаг 4: Открывающая и закрывающая скобки добавляются в формулу суммы. Результат получается так, как показано на рисунке.
Шаг 5: Проверьте результат определения итога с помощью общей процедуры, которую мы использовали.
Результат, полученный в результате двух процедур, одинаков. Но использование формулы массива с помощью клавиши CTRL SHIFT ENTER позволяет легко определить общий объем продаж, исключив вычисление дополнительного столбца промежуточной суммы.
Пример №2. Определение суммы с использованием условия
Этот пример иллюстрирует использование Ctrl SHIFT-ENTER при расчете суммы продаж, сгенерированных для различных продуктов, с использованием условий. Следующие данные рассматриваются для этого примера.
Шаг 1: На первом шаге определите детали продавца и продукта, которые хотят рассчитать объем продаж, сгенерированный индивидуально. Рассмотрим продавца = John и Product = PC и введите эти данные в соответствующие ячейки, как показано на скриншоте ниже.
Шаг 2: Чтобы определить объем продаж, произведенных Джоном при продаже продуктов для ПК, формула
= СУММА (ЕСЛИ (((A2: A10 = F2) * (B2: B10 = F3)), (C2: C10)))
Шаг 3: Нажмите CTRL SHIFT-ENTER, чтобы получить желаемый результат, как показано на рисунке.
Шаг 4: Измените значения ячеек F2 и F3, чтобы определить продажи, произведенные другими лицами.
Таким образом, расчет сгенерированных продаж автоматизируется с помощью комбинации клавиш CTRL SHIFT-ENTER.
Пример № 3 — Определение обратной матрицы
Для этого примера рассмотрим следующую матрицу А.
Шаг 1: Введите матрицу A в лист Excel, как показано на рисунке ниже.
Диапазон матрицы B1: C2
Шаг 2: Выделите диапазон ячеек, чтобы расположить обратную матрицу A -1 на том же листе.
Шаг 3: После выделения диапазона ячеек введите формулу MINVERSE для вычисления обратной матрицы. Будьте внимательны при вводе формулы, чтобы все ячейки были выделены.
Шаг 4: Введите диапазон массива или матрицы, как показано на скриншоте.
Шаг 5: После успешного ввода функции MINVERSE используйте комбинацию клавиш CTRL SHIFT-ENTER, чтобы сгенерировать формулу массива, чтобы получить результаты всех четырех компонентов матрицы без повторного входа в другие компоненты. Преобразованная формула массива отображается как (= MINVERSE (B1: C2))
Шаг 6: Результирующая обратная матрица получается как:
То, что нужно запомнить
- Ручной ввод скобок вокруг формулы не работает в Excel. Мы должны нажать сочетание клавиш CTRL SHIFT-ENTER.
- Когда мы редактируем формулу массива, нам нужно снова нажать сочетание клавиш CTRL SHIFT-ENTER, поскольку скобки удаляются каждый раз, когда мы вносим изменения.
- При использовании ярлыка необходимо выбрать диапазон ячеек, чтобы получить результат, прежде чем вводить формулу массива.
Рекомендуемые статьи
Это руководство по нажатию клавиши CTRL-Enter в Excel. Здесь мы обсудим 3 способа использования Ctrl Shift-Enter в Excel для определения суммы, обратной матрицы и суммы с помощью условия, а также примеры и загружаемый шаблон Excel. Вы можете посмотреть наши следующие статьи, чтобы узнать больше —
- Как объединить ячейки с помощью ярлыков Excel?
- Что такое программирование в Excel?
- Ярлык для удаления строки в Excel
- Как закрасить альтернативные строки в Excel?
Источник
Формулы массива в EXCEL. Знакомство
history 11 ноября 2012 г.
Вводная статья для тех, кто никогда не использовал формулы массива.
Без формул массива (array formulas ) можно обойтись, т.к. это просто сокращенная запись группы однотипных формул. Однако, у формул массива есть серьезное преимущество: одна такая формула может заменить один или несколько столбцов с обычными формулами.
Например, можно найти сумму квадратов значений из диапазона А2:A12 , просто записав в ячейке B14 формулу =СУММ(A2:A12^2) . Для сравнения: чтобы найти сумму квадратов, используя обычные формулы, нам потребуется дополнительный столбец для вычисления квадратов значений и одна ячейка для их суммирования (см. файл примера или диапазон B 2 :B13 на рисунке ниже).
В отличие от ввода обычных формул, после ввода формулы массива нужно нажать вместо ENTER комбинацию клавиш CTRL+SHIFT+ENTER (поэтому, иногда, формулы массива также называются формулами CSE — это первые буквы от названия клавиш, используемых для ввода C trl, S hift, E nter). После этого формула будет обрамлена в фигурные скобки < >(их не вводят с клавиатуры, они автоматически появляются после нажатия CTRL+SHIFT+ENTER ). Это обрамление показано на рисунке выше (см. Строку формул ).
Если бы мы нажали просто ENTER , то получили бы сообщение об ошибке #ЗНАЧ!, возникающую при использовании неверного типа аргумента функции, т.к. функция СУММ() принимает в качестве аргумента только диапазон ячеек (или формулу, результатом вычисления которой является диапазон, или константы). В нашем случае мы в качестве аргумента ввели не диапазон, а некое выражение, которое еще нужно вычислить перед суммированием, поэтому и получили ошибку.
Чтобы глубже понять формулы массива проведем эксперимент:
- выделим ячейку B13 , содержащую обычную формулу =СУММ($B$2:$B$12) ;
- в C троке формул выделим аргумент функции СУММ() , т.е. $B$2:$B$12 ;
- нажмем клавишу F9 , т.е. вычислим, выделенную часть формулы;
- получим <1:4:9:16:25:36:49:64:81:100:121>– массив квадратов значений из столбца В . Массив – это просто набор неких элементов (значений).
Т.е. обычная функция СУММ() в качестве аргумента получила некий массив (или точнее ссылку на него).Теперь проведем тот же эксперимент с формулой массива:
- выделим ячейку, содержащую формулу массива =СУММ($A$2:$A$12^2) ;
- в строке формул выделим аргумент функции СУММ() , т.е. $A$2:$A$12^2 ;
- нажмем клавишу F9 , т.е. вычислим, выделенную часть формулы;
- получим <1:4:9:16:25:36:49:64:81:100:121>– тот же массив, что и в первом случае.
Т.е. нажатие CTRL+SHIFT+ENTER заставило EXCEL перед суммированием произвести промежуточные вычисления с диапазоном ячеек (с массивом содержащихся в нем значений). Для самой функции СУММ() ничего не изменилось – она получила тот же массив, только предварительно вычисленный, а не прямо из диапазона ячеек, как в случае с обычной формулой. Понятно, что вместо функции СУММ() в формуле массива может быть использована любая другая функция MS EXCEL: СРЗНАЧ() , МАКС() , НАИБОЛЬШИЙ() и т.п.
Вышеприведенный пример иллюстрирует использование функции массива возвращающей единственное значение, т.е. результат может быть выведен в одной ячейке. Это достигается использованием функций способных «свернуть» вычисленный массив до одного значения ( СУММ() , СРЗНАЧ() , МАКС() ). Примеры таких функций массива приведены в статье Формулы массива, возвращающие одно значение .
Формулы массива также могут возвращать сразу несколько значений. Понятно, что для того чтобы отобразить такой результат необходимо задействовать целый диапазон ячеек. Примеры таких функций приведены в статье Формулы массива, возвращающие несколько значений .
Преимущества и недостатки формул массива рассмотрены в одноименной статье Формулы массива. Преимущества и недостатки .
В файле примера также приведено решение данной задачи функцией СУММПРОИЗВ() , которая зачастую не требует введения ее как формулы массива: =СУММПРОИЗВ($A$2:$A$12^2)
Здесь, при вводе формулы СУММПРОИЗВ() нажимать CTRL+SHIFT+ENTER необязательно.
ПРИМЕЧАНИЕ : При создании Именованных формул и правил Условного форматирования формулы массива нельзя ввести нажимая CTRL+SHIFT+ENTER . Эти формулы вводятся только в ячейки листа. Однако, если формуле массива присвоить Имя , то EXCEL «сообразит», что нужно с ней нужно делать. Например, если формуле =СУММ($A$2:$A$12^2) присвоить имя Сумма_квадратов, а затем в ячейке указать =Сумма_квадратов , то получим правильный результат.
Источник
Create an array formula
Array formulas are powerful formulas that enable you to perform complex calculations that often can’t be done with standard worksheet functions. They are also referred to as «Ctrl-Shift-Enter» or «CSE» formulas, because you need to press Ctrl+Shift+Enter to enter them. You can use array formulas to do the seemingly impossible, such as
Count the number of characters in a range of cells.
Sum numbers that meet certain conditions, such as the lowest values in a range or numbers that fall between an upper and lower boundary.
Sum every nth value in a range of values.
Excel provides two types of array formulas: Array formulas that perform several calculations to generate a single result and array formulas that calculate multiple results. Some worksheet functions return arrays of values, or require an array of values as an argument. For more information, see Guidelines and examples of array formulas.
Note: If you have a current version of Microsoft 365, then you can simply enter the formula in the top-left-cell of the output range, then press ENTER to confirm the formula as a dynamic array formula. Otherwise, the formula must be entered as a legacy array formula by first selecting the output range, entering the formula in the top-left-cell of the output range, and then pressing CTRL+SHIFT+ENTER to confirm it. Excel inserts curly brackets at the beginning and end of the formula for you. For more information on array formulas, see Guidelines and examples of array formulas.
This type of array formula can simplify a worksheet model by replacing several different formulas with a single array formula.
Click the cell in which you want to enter the array formula.
Enter the formula that you want to use.
Array formulas use standard formula syntax. They all begin with an equal sign (=), and you can use any of the built-in Excel functions in your array formulas.
For example, this formula calculates the total value of an array of stock prices and shares, and places the result in the cell next to «Total Value.»
The formula first multiplies the shares (cells B2 – F2) by their prices (cells B3 – F3), and then adds those results to create a grand total of 35,525. This is an example of a single-cell array formula because the formula lives in just one cell.
Press Enter (if you have a current Microsoft 365 Subscription); otherwise press Ctrl+Shift+Enter.
When you press Ctrl+Shift+Enter, Excel automatically inserts the formula between (a pair of opening and closing braces).
Note: If you have a current version of Microsoft 365, then you can simply enter the formula in the top-left-cell of the output range, then press ENTER to confirm the formula as a dynamic array formula. Otherwise, the formula must be entered as a legacy array formula by first selecting the output range, entering the formula in the top-left-cell of the output range, and then pressing CTRL+SHIFT+ENTER to confirm it. Excel inserts curly brackets at the beginning and end of the formula for you. For more information on array formulas, see Guidelines and examples of array formulas.
To calculate multiple results by using an array formula, enter the array into a range of cells that has the exact same number of rows and columns that you’ll use in the array arguments.
Select the range of cells in which you want to enter the array formula.
Enter the formula that you want to use.
Array formulas use standard formula syntax. They all begin with an equal sign (=), and you can use any of the built-in Excel functions in your array formulas.
In the following example, the formula multiples shares by price in each column, and the formula lives in the selected cells in row 5.
Press Enter (if you have a current Microsoft 365 Subscription); otherwise press Ctrl+Shift+Enter.
When you press Ctrl+Shift+Enter, Excel automatically inserts the formula between (a pair of opening and closing braces).
Note: If you have a current version of Microsoft 365, then you can simply enter the formula in the top-left-cell of the output range, then press ENTER to confirm the formula as a dynamic array formula. Otherwise, the formula must be entered as a legacy array formula by first selecting the output range, entering the formula in the top-left-cell of the output range, and then pressing CTRL+SHIFT+ENTER to confirm it. Excel inserts curly brackets at the beginning and end of the formula for you. For more information on array formulas, see Guidelines and examples of array formulas.
If you need to include new data in your array formula, see Expand an array formula. You can also try:
Delete an array formula (you press Ctrl+Shift+Enter there, too)
Name an array constant (they can make constants easier to use)
Источник
Как узнать, является ли данная формула формулой массива? Что вообще она означает?
На этапе создания формула (или также функция) сама по себе не является ни формулой массива, ни обычной формулой. Это вы определяете, как Excel должен истолковать формулу, которую вы вводите. То, что формула является формулой массива – это не столько особенность самой формулы, а скорее способом, которым программа Excel введенную формулу «обрабатывает». Подтверждение формулы с помощью сочетания клавиш «Ctrl + Shitf + Enter» – это является для Excelя командой на выполнение (обработку данных) как массив вычислений. Тогда он используется в качестве аргумента функции и возвращает в качестве результата вычислений таблицу (массив данных).
Примеры формул массива и отличие от обычных формул в Excel
Некоторые функции Excelя по умолчанию в качестве аргумента принимают диапазон ячеек (массив) и в результате возвращают одно значение. Отличными примерами являются функции СУММ, СЧЕТЕСЛИ, СРЗНАЧ и т.д. Для этих функций не имеет никакого значения, вводите ли вы их как функции массива или нет. Они и так обрабатывают таблицы, и найдут выход (сработают правильно) из любой ситуации. Вот такие маленькие Excel-евские приспособленцы.
К счастью, существуют другие функции, которые работают совершенно иначе, т.е. в зависимости от вашего решения относительно их принадлежности к «функциям массива» (иногда они вообще не хотят работать). Прекрасным примером является функция ЕСЛИ.
Когда формула является формулой массива, а когда обычной?
Для начала определимся как выглядит обычный массив значений в Excel. Это значения, которые находятся внутри фигурных скобок и разделены между собой точкой с запятой. Например:
{23;-32;15;7} – это синтаксис массива значений в Excel. Он может быть использован в аргументах функций.
Диапазон ячеек A1:A4 – так же является массивом значений в Excel. Естественно так же используется в аргументах функций. Например сравним результаты вычислений двух формул: =СУММ(A1:A4) и =СУММ({23;-32;15;7}) – они идентичны:
Визуально формула массива находится так же внутри фигурных скобок, но они не должны быть введены вручную, а только лишь при помощи комбинации клавиш CTRL+SHIFT+Enter. Если ввести вручную фигурные скобки, то формула не будет выполнятся в массиве – это будет синтаксическая ошибка в Excel.
Формула массива (введенная с помощью сочитания CTRL+SHIFT+Enter) будет использоваться везде, где вы хотите, чтобы функция, которая обычно работает с отдельными значениями (ячейками), внезапно повела себя иначе и приняла в качестве аргумента и вернула в качестве результата массив значений (таблицу). Вернемся к уже упомянутой функции ЕСЛИ. В качестве аргумента она принимает логическое значение ИСТИНА или ЛОЖЬ. В классической форме:
=ЕСЛИ($A$1>0;»больше»;»меньше»)
Если значение в ячейке A1 больше нуля, в качестве аргумента функция получит значение ИСТИНА и в качестве результата вернет текстовую строку «больше». Однако, если бы вы хотели проверить несколько ячеек сразу и передать результат такой проверки другой функции, вы должны были бы использовать вышеуказанную формулу как формулу массива. Для этого при вводе нажмем сочитание клавиш CTRL+SHIFT+Enter, а не как обычно (просто Enter):
{=ЕСЛИ($A$1:$A$4>0;»больше»;»меньше»)}
В качестве аргумента функция принимает целый диапазон $A$1:$A$4. В результате проверки каждой ячейки диапазона в памяти компьютера создается таблица значений в массиве. Схематически таблицу можно отобразить так:
А так выглядят эти значения в массиве:
{ИСТИНА;ЛОЖЬ;ИСТИНА;ИСТИНА}
Например, чтобы прочитать этот массив и получить второе значение (сделать выборку значений) воспользуемся функцией:
=ИНДЕКС({ИСТИНА;ЛОЖЬ;ИСТИНА;ИСТИНА};2)
Тоже самое что и:
Затем создается другая таблица, значения которой зависят непосредственно от значений в первой таблице. Если элемент в первом массиве имеет значение ИСТИНА, во втором массиве он примет значение «больше». Если он имеет значение ЛОЖЬ, элемент во второй таблице примет значение «меньше». После этой операции первая таблица удаляется из памяти компьютера, и в конечном счете, функция возвращает массив {«больше», «меньше», «больше», «больше»}. Схематически вторую таблицу можно отобразить так:
Так же ее можно прочитать функцией:
=ИНДЕКС({«больше»;»меньше»;»больше»;»больше»};2)
В примере с функцией ЕСЛИ была введена формула массива только в одну ячейку, поэтому в результате получили только одно значение, соответствующее первому значению в таблице. Однако достаточно ввести формулу массива в диапазон ячеек, чтобы увидеть все значения массива результатов. Для этого выделяем диапазон из нескольких ячеек, нажимаем клавишу F2 (или заново вводим формулу вручную) и жмем CTRL+SHIFT+Enter.
В примере (рисунок ниже) видно, что таблица результатов содержит ровно четыре элемента, о которых я упоминал выше.
Примеры как использовать формулу массива в Excel
Это все хорошо, но возникают некоторые вопросы: «Зачем же нужна формула массива?» или «Как или где использовать формулу в массиве?», «Чем она лучше обычной формулы?».
Разумеется, массив, возвращаемый функцией ЕСЛИ, может передаваться далее на «обработку» в качестве аргумента для другой функции.
Пример. Представим, что вы хотели бы найти сумму ячеек B7:B10, но только тех, которые имеют значение больше нуля. Конечно же, вы можете использовать функцию СУММЕСЛИ, однако в нашем примере мы хотим сделать это только с помощью формулы массива. Суммируя значения ячеек нашего диапазона, необходимо будет как-то избавиться от значения «-32». Функции СУММ необходимо передать массив, в котором содержатся только значения больше нуля. Везде там, где значение меньше нуля, мы заменяем его на ноль, что, конечно же, не повлияет на результат. Как вы уже знаете, временную таблицу с соответствующими значениями вы можете получить, используя функцию ЕСЛИ. В конечном итоге соответствующая формула будет выглядеть так:
Вводим формулу и не забываем для подтверждения ввода нажать комбинацию клавиш CTRL+SHIFT+Enter. В результате проверки каждой ячейки диапазона $A$1:$A$4 (является ли значение больше нуля) в памяти компьютера создается массив {ИСТИНА; ЛОЖЬ; ИСТИНА; ИСТИНА}. Затем создается очередная таблица. Если элемент в первом массиве имеет значение ИСТИНА, то во второй таблице будет отображаться значение из соответствующей ячейки. Если он имеет значение ЛОЖЬ, то элемент во второй таблице примет значение 0. После этой операции первая таблица удаляется из памяти компьютера, и в конечном итоге функция ЕСЛИ возвращает массив {23; 0; 15; 7}. Затем эта таблица передается в качестве аргумента функции =СУММ({23; 0; 15; 7}), которая, согласно своему предназначению, возвращает сумму всех элементов в таблице. В нашем примере сумма равна 45. В завершении, посмотрите, что произойдет, если вы скажете Excelю обработать приведенную выше формулу не как формулу массива.
Ни одна из описанных выше таблиц, в этом случае, не будет создана. Только одна ячейка диапазона будет проверена (ячейка в той же строке, в которой находится функция). В нашем случае 15>0 значит, как первый аргумент функция ЕСЛИ получит логическое значение ИСТИНА. Затем ВЕСЬ диапазон A1:A4 будет передан функции СУММ, и в результате функция возвращает значение равное 13 (23-32+15+7). Если бы в ячейке вместо значения 15 было число меньше нуля, функция ЕСЛИ в качестве аргумента получила бы значение ЛОЖЬ, и, следовательно, только значение нуля было бы передано функции СУММ. Наша функция СУММ в результате также вернет значение равное нулю.
Как отличать формулу массива от обычной формулы
При нажатии клавиш CTRL+SHIFT+Enter для подтверждения ввода в строке формул будут отображены фигурные скобки по краям. Значит данная формула выполняется в массиве. Но что если еще на этапе создания неизвестно какой тип формул следует применять?
Правильное «распознавание», когда следует нажимать CTRL+SHIFT+Enter, а когда просто Enter полностью зависит от понимания того, как работают массивы в формулах. Когда вы это поймете, сможете сказать, что конкретную формулу следует вводить (подтверждать) сочетанием клавиш – CTRL+SHIFT+Enter.
Конечно же, не подтвержденная, а просто как формула также может возвращать КАКОЙ-ТО результат (в чем вы могли только что убедиться сами). Однако, если вы сможете прочитать формулу и понять механизм, то вы заметите, что такой результат является ОШИБОЧНЫМ. И поэтому для правильной работы формулы вам необходимо ее подтвердить «Ctr+Shift+Enter». Как и все, понимание и использование формул массива требует практики. Тем не менее, стоит некоторое время посвятить тому, чтобы во всем разобраться. Потому что формулы массива позволяют решить многие проблемы, которые на первый взгляд могут казаться неразрешимыми.
Примеры вычислений и анализа формул массива
Каким образом можно просматривать и проверять значения промежуточных результатов расчета, например, содержание массивов, созданных в памяти компьютера и используемых для выполнения последующих действий? Ничего сложного! Пример 1:
Перейдите на ячейку с формулой, а затем в строке формул выделите в первом аргументе функции ссылку на диапазон ячеек:
Нажмите клавишу F9 (или «Пересчет» в правом верхнем углу меню «Формулы»), и вы получите (в строке формулы) значения аргументов, которые используются для вычислений, как показано ниже:
— запись с использованием двоеточий означает, что мы имеем дело с элементами вертикального (столбикового) массива, элементы горизонтального (строкового) разделены стандартным символом — «;» (точкой с запятой).
Пример 2: Снова перейдите на ячейку с формулой массива, но на этот раз выделите первый аргумент функции целиком вместе со знаком сравнения «>» и значением критерия – «0»).
Нажмите кнопку F9, и вы получите массив результатов вычислений, как показано ниже:
То есть, созданный в памяти компьютера массив:
{ИСТИНА:ЛОЖЬ:ИСТИНА:ИСТИНА}
Пример 3: Выделите ячейку формулой массива где в функцию СУММ вложена функция ЕСЛИ. Затем в строке формул выберите весь аргумент функции СУММ (вместе с функцией ЕСЛИ):
Нажмите клавишу F9 и вы получите массив итоговых результатов вычисления, которые используются для суммирования, как показано ниже:
То есть, созданный в памяти компьютера массив:
{23157}
Пример 4: Просто перейдите на ячейку с формулой B1 и выберите инструмент «ФОРМУЛЫ»-«Зависимости формул»-«Вычислить формулу»
После чего нажмите на кнопку «Вычислить»:
В результате ссылка на диапазон ячеек в аргументе вложенной функции ЕСЛИ разложилась на массив значений. Снова нажмите на кнопку «Вычислить»:
Мы получили массив значений теперь уже для функции СУММ. Такой же, как и в примере 3.
Читайте также: Работа с массивами функций в Excel.
Часто неопытные пользователи Excel возмущаются, что формула не работает. В конце концов оказалось, как легко догадаться, формулу в массиве вводили как обычную (просто Enter). Речь идет не о недоразумении, которое произошло, а о том факте, что у этих пользователей возникает вопрос: как избегать таких ошибок? Поэтому важно сразу во всем разобраться, чтобы в дальнейшем больше не задавать таких вопросов.