1

Мне нужно сложить 9 ячеек данных, каждая на отдельном листе, но всегда в одном и том же месте. Я хочу, чтобы фигура возвращалась только тогда, когда все ячейки имеют данные, даже если это 0. Но, если одна из ячеек пуста, я хочу пустое возвращение.

Я пытаюсь разобраться, на самом деле, придумывая, куда пойдут IF, ISBLANK и SUMS. Любые указатели будут с благодарностью.

SUM(IF(ISBLANK(RANGEA,OR(RANGEB),0,ALLRANGES)))

Большое спасибо

Майкл

5 ответов5

6

Предполагая, что данные находятся в диапазоне от A1 до A9:

=IF(COUNTA(A1,A2,A3,A4,A5,A6,A7,A8,A9)<9,"",SUM(A1,A2,A3,A4,A5,A6,A7,A8,A9))

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

2

В дополнение к ответу nnewton выше, вы можете переформатировать как =IF(COUNTA(A1:A9)<9,"",SUM(A1:A9)) с тем же результатом

1

Функция IF работает следующим образом:

IF(TEST, DO_IF_TRUE, DO_IF_FALSE)

К сожалению, функция ISBLANK работает только для одной ячейки, поэтому вы должны вкладывать операторы IF следующим образом:

=IF( ISBLANK(CELL1) , " " , IF( ISBLANK(CELL2), " ", IF( ISBLANK(CELL3), " ", SUM(RANGE) ) ) )

Это проверит, если первая ячейка пуста. Если так, то будет напечатано пустое место. Если нет, он проверит, если вторая ячейка пуста, напечатает пробел, если так, и продолжит тестирование, если нет. В конце он печатает SUM если все пусто.

Итак, с 9 ячейками это будет выглядеть так:

=IF(ISBLANK(A1),"",IF(ISBLANK(A2),"",IF(ISBLANK(A3),"",IF(ISBLANK(A4),"",IF(ISBLANK(A5),"",IF(ISBLANK(A6),"",IF(ISBLANK(A7),"",IF(ISBLANK(A8),"",IF(ISBLANK(A9),"",SUM(A1:A9))))))))))
0

Вы также можете сделать это, используя это:

=IF(OR(ISBLANK(A1),ISBLANK(A2),ISBLANK(A3),ISBLANK(A4),ISBLANK(A5),ISBLANK(A6),ISBLANK(A7),ISBLANK(A8),ISBLANK(A9)),"",SUM(A1:A9))
0

Используйте формулу массива {sum(a1:a10)*1} . (Используйте Ctrl+Shift+Enter, чтобы получить внешние скобки.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .