Имеются исходные данные в ячейках A1:F5 (см. вложение) Необходимо одной формулой вычислить построчное произведение и затем все значения произведений сложить, как это сделано в ячейке H7 Ссылатся нужно на диапазон A1:F5, такие формулы как:
Код
=СУММ(A1:A5*B1:B5*C1:C5*D1:D5*E1:E5*F1:F5)
не принимаются, т.к. не универсальны и не подходят для динамического диапазона.
Значения в A1:F5 больше нуля (нет смысла умножать на ноль)
Имеются исходные данные в ячейках A1:F5 (см. вложение) Необходимо одной формулой вычислить построчное произведение и затем все значения произведений сложить, как это сделано в ячейке H7 Ссылатся нужно на диапазон A1:F5, такие формулы как:
Код
=СУММ(A1:A5*B1:B5*C1:C5*D1:D5*E1:E5*F1:F5)
не принимаются, т.к. не универсальны и не подходят для динамического диапазона.
Значения в A1:F5 больше нуля (нет смысла умножать на ноль)MCH
Со знаком "=" массивная - 56 или 55 (ссылка за пределами диапазона), немассивная - 68 И, кстати, СТРОКА(1:5) - тоже имеет ссылки за пределы диапазона? Тогда +2 знака
Со знаком "=" массивная - 56 или 55 (ссылка за пределами диапазона), немассивная - 68 И, кстати, СТРОКА(1:5) - тоже имеет ссылки за пределы диапазона? Тогда +2 знакаvikttur
Сообщение отредактировал vikttur - Вторник, 11.08.2015, 02:09
Исходя из размеров формул все решения сделаны через ПромИтоги и Смещ, возможно с заменой ссылки СТРОКА(A1:F5) на СТРОКА(1:5) Для "продвинутых" - нужно найти решение без использования функции ПромИтоги
Исходя из размеров формул все решения сделаны через ПромИтоги и Смещ, возможно с заменой ссылки СТРОКА(A1:F5) на СТРОКА(1:5) Для "продвинутых" - нужно найти решение без использования функции ПромИтогиMCH
Пока получилось 51 символ, массивная. Вычисляет автоматически при изменении диапазона. Вставка-удаление строк-столбцов. Если не строго придерживаться ссылки на диапазон A1:F5, то 42 символа.
Пока получилось 51 символ, массивная. Вычисляет автоматически при изменении диапазона. Вставка-удаление строк-столбцов. Если не строго придерживаться ссылки на диапазон A1:F5, то 42 символа.Светлый
Программировать проще, чем писать стихи.
Сообщение отредактировал Светлый - Четверг, 13.08.2015, 21:23
Rioran, MCH всё замечательно объяснил. Как-то не подумал, что в функции 2^..LOG(A1:F5;2) основание можно не писать. Для 10^..LOG(A1:F5) действительно, экономится символ. Век живи - век учись. По ходу работы над формулой выяснил, что ИНДЕКС(массив;0;число) или ИНДЕКС(массив;число;0) выдаёт не одно значение, а массив. Не знал такого.
Rioran, MCH всё замечательно объяснил. Как-то не подумал, что в функции 2^..LOG(A1:F5;2) основание можно не писать. Для 10^..LOG(A1:F5) действительно, экономится символ. Век живи - век учись. По ходу работы над формулой выяснил, что ИНДЕКС(массив;0;число) или ИНДЕКС(массив;число;0) выдаёт не одно значение, а массив. Не знал такого.Светлый
Если указать в качестве аргумента "номер_строки" или "номер_столбца" значение 0 (ноль), функция ИНДЕКС возвратит массив значений для целого столбца или целой строки соответственно. Чтобы использовать значения, возвращенные как массив, введите функцию ИНДЕКС как формула массива в горизонтальный диапазон ячеек для строки и в вертикальный — для столбца. Чтобы ввести формулу массива, нажмите сочетание клавиш CTRL+SHIFT+ВВОД.
Если указать в качестве аргумента "номер_строки" или "номер_столбца" значение 0 (ноль), функция ИНДЕКС возвратит массив значений для целого столбца или целой строки соответственно. Чтобы использовать значения, возвращенные как массив, введите функцию ИНДЕКС как формула массива в горизонтальный диапазон ячеек для строки и в вертикальный — для столбца. Чтобы ввести формулу массива, нажмите сочетание клавиш CTRL+SHIFT+ВВОД.