Формула на Excel: Само формули за суми -

Обща формула

=SUMPRODUCT(range*ISFORMULA(range))

Обобщение

За да сумирате резултатите само от формули, можете да използвате функциите SUMPRODUCT и ISFORMULA. В показания пример формулата във F6 е:

=SUMPRODUCT(sales*ISFORMULA(sales))

където "продажби" е наименуваният диапазон C5: C13, стойностите в C5: C9 са кодирани твърдо, а стойностите в C10: C13 се генерират с формули.

Обяснение

Тази формула използва логическа логика за "филтриране" на числата в колона C преди сумиране с функцията SUMPRODUCT. Когато формулата се оценява, стойностите в посочения диапазон "продажби" се разширяват в масив:

(925;1038;1105;1210;1250;1313;1379;1448;1520)

За да филтрира всякакви стойности, които не са създадени от формула, функцията ISFORMULA е да създаде масив от TRUE FALSE стойности като тази:

=ISFORMULA(sales) =(FALSE;FALSE;FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE)

Когато тези два масива се умножат помежду си, математическата операция принуждава стойностите TRUE и FALSE към 1 и 0:

=SUMPRODUCT((925;1038;1105;1210;1250;1313;1379;1448;1520)*(0;0;0;0;0;1;1;1;1)) =SUMPRODUCT((0;0;0;0;0;1313;1379;1448;1520))

Нулите отменят резултатите без формула, а SUMPRODUCT сумира и връща окончателен резултат.

Не формули

За да сумирате стойности, които не са генерирани от формула, можете да добавите функцията NOT по следния начин:

=SUMPRODUCT(sales*NOT(ISFORMULA(sales)))

Тук функцията NOT обръща резултатите TRUE FALSE, върнати от функцията ISFORMULA, която филтрира всички стойности, генерирани с формула.

Интересни статии...