Есть ли способ использовать формулу массива, чтобы сохранить мою формулу (чтобы добавить определенные столбцы), когда строки вставляются? - PullRequest
0 голосов
/ 22 апреля 2019

Я настраиваю электронную таблицу, в которой в каждой строке суммируются определенные столбцы, но мне нужно включить формулу при вставке строки.

Текущая формула также содержит оператор для создания значения 0, если в последнем столбце установлен флажок:

=IF(T2=FALSE, SUM(I2,K2,L2,M2,N2,O2), 0)

Есть ли способ сделать это, используя массивформула?

Ответы [ 2 ]

0 голосов
/ 22 апреля 2019
={"AAA"; ARRAYFORMULA(IF(LEN(T2:T), IF(T2:T=FALSE, I2:I+K2:K+L2:L+M2:M+N2:N+O2:O, 0), ))}

0

0 голосов
/ 22 апреля 2019

Вот формула, которая даст сумму для столбцов от I до O в каждой строке, игнорируя столбец J:

=ArrayFormula(if(I2:I="","",if(T2:T<>FALSE,0,I2:I+sumif(row(K2:O)+0*column(K2:O),row(K2:O),K2:O))))

но это предполагает, что все строки, в которых есть данные, будут иметь номер в столбце I.

Если это не так, вы можете продолжить тестирование столбцов по отдельности, например:

=ArrayFormula(if((I2:I="")*(K2:K=""),"",if(T2:T<>FALSE,0,I2:I+sumif(row(K2:O)+0*column(K2:O),row(K2:O),K2:O))))

и так далее, вплоть до столбца O, если необходимо, или, возможно, столбец T всегда заполняется, и вы можете проверить это - это зависит от того, как на самом деле выглядят ваши данные.

enter image description here

Примечание 1

row(K2:O)+0*column(K2:O)

необходимо для создания массива, который имеет те же размеры, что и K2: O, как того требует SUMIF.

Примечание 2

Существует также подход MMULT для получения сумм строк , как показано здесь

...