Часто при работе с таблицами возникает необходимость применить одну и ту же операцию к целому диапазону ячеек или произвести расчеты по формулам, зависящим от большого массива данных.
Под массивом в MS Excel понимается прямоугольный диапазон формул или значений, которые программа обрабатывает как единую группу. MS Excel предоставляет простое и элегантное средство – формула массива – для решения подобных задач.
В качестве примера использования формулы массива приведем расчет цен группы товаров с учетом НДС. Например, в диапазоне В2:В4 даны цены группы товаров без учета НДС. Необходимо найти цену каждого товара с учетом НДС (который будем полагать равным 25%). Таким образом, необходимо умножить массив элементов В2:В4 на 125%. Результат надо разместить в ячейках диапазона С2:С4 (рис. 17.1 рис 17.1). Для этого:
= В2:В4*125%
{=В2:В4*125%}
Примечание. При выборе диапазона, в который будет введена формула массива, надо быть аккуратным. Если выбрать слишком маленький диапазон, то невозможно будет получить все результаты. Если диапазон выбрать слишком большим, то в неиспользуемых ячейках отобразится сообщение об ошибке #Н/Д.
(рис 17.1) Выделение диапазона для ввода результирующего массива
(рис 17.2) Умножение элементов массива на число
Формулы массивов действуют на все ячейки массива. Нельзя изменять отдельные ячейки в операндах формулы. Как же изменить формулу массива? Самый простой способ – выделить весь диапазон, в который введена формула массива, и удалить ее, нажав клавишу <Delete>. После чего ввести формулу массива корректно. Такой прямой способ хорош, когда формула простая. А если она сложная, а в ней просто требуется произвести какую-то небольшую коррекцию? В этом случае возможны две ситуации.
Продемонстрируем операцию поэлементного сложения двух массивов. Пусть, например слагаемыми будут массивы, содержащиеся в диапазонах А1:В2 и ).
(рис 17.3) Сумма двух массивов
Далее:
Gl:H2, в который будет помещен результат поэлементного сложения двух массивов. От данного диапазона требуется, чтобы он имел тот же размер, что и массивы-слагаемые.A1:B2+D1:E2MS Excel возьмет формулу в строке формул в фигурные скобки (рис 17.3) и произведет требуемые вычисления {=A1:B2+D1:E2}Примечание. Для избежания ошибок в формулу вводите ссылки на диапазоны ячеек не с клавиатуры, а путем выбора их на рабочем листе мышью. Тогда ссылка на диапазон ячеек в формулу будет вводиться автоматически.
Аналогично можно вычислить поэлементно разность, произведение и деление массивов.
На рабочем листе допустимо создавать формулы массива, каждый элемент которого связан посредством некоторой функции с соответствующим элементом первоначального массива.
Например, пусть в диапазоне А1:В2 имеется некоторый массив данных. Требуется найти массив, элементы которого равны значениям функции SIN от соответствующих элементов искомого массива.
Для этого:
D1:E2, в котором будет размещен результат. От данного диапазона требуется, чтобы он имел тот же размер, что и исходный диапазон.MS Excel возьмет формулу в строке формул в фигурные скобки и произведет требуемые вычисления с элементами массива {=SIN(A1:B2)}Приведем более сложный пример использования формул массива. А именно, попытаемся найти значение следующего выражения:
$$$$S=\frac{2\sum\limits_{i=1}\limits^{n}X_{i}+\left(\sum\limits_{i=1}\limits^{m}\sum\limits_{j=1}\limits^{m}B_{ij}C_{ij}\right)^{2}}{1+\sum\limits_{i=1}\limits^{n}X_{i}^{2}}$$$$где: X – вектор из n компонентов, B и C – матрицы размерности mxm, причем, n=3, m=2 и
Для решения этой задачи нам потребуется функция рабочего листа СУММ (SUM), которая суммирует все числа из диапазона ячеек.
Синтаксис:
СУММ{число1; число2; ...).
где: число1, число2, ... – это от 1 до 30 аргументов, которые надо просуммировать. Аргументами могут быть либо ссылки на диапазоны ячеек, либо числа.
Например, СУММ(3;2) возвращает 5. Если в диапазоне ячеек А1:В2 содержатся числа 1, 2, 3, 4, то СУММ(А1:В2;15) возвращает 25.
(рис 17.4) Вычисление значения s
Теперь можно вернуться к вычислению значения s.
X.=(2*СУММ(А2:А4)+СУММ(В2:СЗ*D2:Е3) ^2) / (1+СУММ(А2 :А4^2))
{=(2*СУММ(А2:А4)+СУММ(В2:СЗ*D2:ЕЗ) ^2) / (1+СУММ(А2 :А4^2))}
Примечание. Хотя в данном примере формула возвращает одно число, а не массив, тем не менее формула является формулой массива. Поэтому не забудьте ее ввод завершить нажатием комбинации клавиш <Ctrl>+<Shift>+<Enter>. Если вы это не сделаете, в ячейке В6 появится сообщение об ошибке #ЗНАЧ!.
Конечно, этот же результат можно было бы получить и без использования формул массивов, введя в ячейку В6 простую формулу
=(2*СУММ(А2:А4)+СУММПРОИЗВ(В2:СЗ;D2:ЕЗ)^2)/(1+СУММКВ(А2:А4))
В данной формуле используются функции рабочего листа СУММПРОИЗВ (SUMPRODUCT) и СУММКВ (SUMSQ).
Функция СУММПРОИЗВ возвращает сумму произведений соответствующих элементов массивов.
Синтаксис:
СУММПРОИЗВ (массив1; массив2; ...).
где: массив1, массив2, ... – это от 2 до 30 массивов, чьи компоненты нужно перемножить, а затем сложить. Аргументы, которые являются массивами, должны иметь одинаковые размерности. Если это не так, то функция СУММПРОИЗВ возвращает значение ошибки #ЗНАЧ!.
Функция СУММКВ возвращает сумму квадратов аргументов.
Синтаксис:
СУММКВ (число1; число2; ...).
где: число1, число2, ... – это от 1 до 30 аргументов, квадраты которых суммируются. Можно использовать отдельный массив или ссылку на массив вместо аргументов, разделяемых точкой с запятой.
В .
| Функция (рус.) | Функция (англ.) | Описание |
|---|---|---|
| МОБР (массив) | MINVERSE (array) |
Возвращает обратную матрицу |
| МОПРЕД (массив) | MDETERM (array) |
Возвращает определитель матрицы |
| МУМНОЖ (массив1; массив2) | MMULT (array1; array2) |
Возвращает матричное произведение двух матриц |
| ТРАНСП (массив) | TRANSPOSE (array) |
Возвращает транспонированную матрицу |
Примечание 1. При работе с матрицами, перед вводом формулы, надо выделить область на рабочем листе, куда будет помещен результат вычислений, а ввод формулы завершать нажатием комбинации клавиш <Ctrl>+<Shift>+<Enter>.
Примечание 2. Массивы в формулах могут быть заданы либо как диапазон ячеек, например А1:С3, либо как массив констант, например {1;2;3: 4;5;6: 7;8;9}, либо как имя диапазона или массива.
Решим в качестве примера систему линейных уравнений с двумя неизвестными, матрица коэффициентов которой записана в ячейки А2:В3, а свободные члены – в ячейки ).
Вспомним, что решение линейной системы АХ = В,
где: А – матрица коэффициентов,
В – столбец (вектор) свободных членов,
X– столбец (вектор) неизвестных, имеет вид X = А-1В , где А-1– обратная матрица к А.
В нашем случае
$$$$ A=\left(\begin{array}{cc} 8 3\\ 2 7 \end{array}\right),B=\left(\begin{array}{c} 4\\ 2 \end{array}\right). $$$$Поэтому, для решения системы уравнений
F2: F3.
{=МУМНОЖ(МОБР(А2:В3);D2:D3)}
Таким образом, решением системы уравнений является вектор
$$$$ X=\left(\begin{array}{c} 0.44\\ 0.16 \end{array}\right). $$$$В качестве более сложного примера решим систему линейных уравнений А2Х = В, где
$$$$ A=\left(\begin{array}{cc} 7 2\\ 1 4 \end{array}\right),B=\left(\begin{array}{c} 2\\ 1 \end{array}\right). $$$$
(рис 17.5) Решение системы линейных уравнений
Решением этой системы является вектор X = (А2)-1В.
Для нахождения вектора X.
D2: D3.F2:F3, куда поместим элементы вектора решения.=МУМНОЖ(МОБР(МУМНОЖ(А2:В3;А2:ВЗ));D2:D3)
MS Excel возьмет формулу в строке формул в фигурные скобки и произведет требуемые вычисления с элементами массива.
{=МУМНОЖ(МОБР(МУМНОЖ(А2:В3;А2:ВЗ));D2:D3)}
В диапазоне ячеек F2:F3 будет найдено решение системы уравнений
Рассмотрим пример вычисления квадратичной формы z = XТАХ, при этом
Для нахождения значения этой квадратичной формы:
D2:D3.F2, куда необходимо поместить значение квадратичной формы.=МУМНОЖ(МУМНОЖ(TPAHCП(D2:D3);A2:B3);D2:D3)
{=МУМНОЖ(МУМНОЖ(TPAHCП(D2:D3);A2:B3);D2:D3)}
(рис 17.6) Нахождение квадратичной формы
Примечание. Хотя в данном примере формула возвращает одно число, а не массив, тем не менее, она является формулой массива. Поэтому не забудьте ее ввод завершить нажатием комбинации клавиш <Ctrl>+<Shift>+<Enter>. Если вы это не сделаете, в ячейке F2 появится сообщение об ошибке #ЗНАЧ!.
Хорошим упражнением по работе с массивами является пошаговое программирование на рабочем листе решения системы линейных уравнений методом Гаусса.
На рисунке 17.7 рис 17.7 приведены результаты пошагового решения методом Гаусса следующей системы линейных уравнений:
$$$$ \left\{ \begin{aligned} 7x_{1}+1x_{2}+3x_{3}=1\\ 3x_{1}+6x_{2}+1x_{3}=2\\ 3x_{1}+1x_{2}+4x_{3}=3 \end{aligned} \right. $$$$
(рис 17.7) Пошаговое решение системы линейных уравнений методом Гаусса
Итак, для пошагового решения этой системы уравнений сначала введите на рабочем листе исходные данные. Для этого:
D2: D4 задайте свободные члены.
{=А3:D3-$A$2:$D$2*A3/$A$2}
A7:D7, расположите указатель мыши на маркере заполнения этого диапазона и пробуксируйте его вниз на одну строку.D7 и скопируйте его содержимое в буфер обмена.A10:D10 из диапазона А6:D7 будут скопированы только значения, а не формулы.A12:D12.
{=A8:D8-A7:D7*B8/B7}
(рис 17.8) Диалоговое окно Специальная вставка
Примечание. Команда Щелкните правой кнопкой мыши Специальная вставка удобна при копировании и вставке части атрибутов ячеек, таких как формат или значение. Команда позволяет комбинировать в одной ячейке атрибуты из разных ячеек, а также выполнять над ними арифметические операции. Кроме того, установка флажка транспонировать позволяет вставлять в рабочий лист данные из буфера обмена с одновременным их транспонированием. А установка флажка пропускать пустые ячейки разрешает игнорировать пустые ячейки при вставке в рабочий лист Данных из буфера обмена.
Прямая прогонка метода Гаусса закончилась. Переходим к обратной прогонке.
F8:I8.
{=A12:D12/C12}
F7:I7.
{=(А11:D11-F8:I8*C11)/B11}
F6:I6.
{=(А10:D10-F7:I7*B10-F8:I8*C10)/A10}
Итак, решением системы уравнений является следующий вектор
$$$$ X=\left(\begin{array}{c} 0.28037\\ 0.32710\\ 0.87850 \end{array}\right). $$$$Использование формулы массива может избавить от необходимости вводить на рабочем листе промежуточные формулы. Продемонстрируем это на примере. На рисунке 17.9 рис 17.9 приведена некоторая отчетная ведомость.
Необходимо найти:
D7 формулу массивов:
{=СУММ(С2:С5-В2:В5)}
D8 формулу массивов:
{=МАКС(С2:С5-В2:В5)}
Примечание. Здесь используется формула рабочего листа МАКС (MAX), которая возвращает максимальное значение среди ее аргументов. Функция МИН (MIN) возвращает минимальное значение среди ее аргументов.
(рис 17.9) Исключение промежуточных формул
В случае если среди данных имеются как положительные, так и отрицательные значения, формулы массивов позволяют обработать только положительные или отрицательные данные без предварительной их сортировки или фильтрации. Например, пусть в диапазон А12:А16 введены как доходы, так и убытки за отчетный период. Тогда, для того чтобы найти:
{=СУММ(ЕСЛИ(А12:А16>0;А12:А16))}
{=СУММ(ЕСЛИ(А12:А16<0;А12:А16))}
Вариант 1.
z=YTATA2Y , гдегде: х, у – векторы из n компонентов, b – матрица размерности mxm, причем n = 4, m = 2 и
Вариант 2.
z=YTA3Y , гдегде: a – вектор из m компонентов, с – матрица размерности nxn, причем
n = 3, m = 4
Вариант3.
z=YTATA3Y, гдегде: x, y – векторы из n компонентов, b – матрица размерности mxm, причем n = 4, m = 2 и
Вариант4.
B, А2АTАХ = В и вычислить значение квадратичной формы z=YTATAATY , гдегде: а – вектор из m компонентов, с – матрица размерности nхn, причем
n = 3, m = 4 и
Вариант5.
B и вычислить значение квадратичной формы z=YTA3ATY , гдегде: х, у – векторы из n компонентов, b – матрица размерности mxm, причем n = 4, m = 2 и
Вариант6.
z=YTA2ATAY , гдегде: а – вектор из m компонентов, с – матрица размерности nxn, причем
n = 3, m = 4 и
Вариант7.
z=YTAATA2Y , гдегде: х, y – векторы из n компонентов, причем n = 4 и x=(1, 2, 7, 4), y=(1, 7, 2, 3).
Вариант8.
z=YTA2ATAY , гдегде: а – вектор из m компонентов, с – матрица размерности пxп, причем
n = 2, m = 4 и
Вариант9.
z=YTAATAATY , гдегде: x, y – векторы из n компонентов, причем n = 4 и х=(7, 5, 7, 4), у=(2, 4, 2, 3).
Вариант10.
A2ATAX = B и вычислить значение квадратичной формы z=YTAATAATY , гдегде: а – вектор из m компонентов, с –матрица размерности nхn, причем
n = 3, m = 4
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.