1

Есть четыре ячейки a1, b1, c1, d1. a1, b1, c1 содержит число, а d1 - их сумма.

Иногда ячейка может заполняться звездочкой (*), когда для этой категории нет номера, поэтому я использую звездочку. У d1 есть формула =sum(a1:c1) , но результат есть !value# из-за некоторых ячеек, заполненных звездочкой.

Как мне написать мою формулу, чтобы считать звездочку (*) как zero в сумме?

3 ответа3

2

Ваша фотография не соответствует формуле, приведенной в вашем вопросе. Формула в вопросе не имеет проблемы, о которой вы спрашиваете:

=SUM(A1:C1) 

вернет сумму любых чисел в диапазоне A1:C1. Функция SUM обрабатывает любые текстовые значения, как если бы они были нулевыми).

Однако формула на рисунке возвращает ошибку, потому что P1 * 150 возвращает ошибку, если P1 не является числовым. Если вы хотите использовать функцию SUM для обработки текста как нуля, вы должны применить его к значению ячейки перед выполнением любой арифметики с ним. Чтобы учесть возможность использования любой из ячеек текста, замените формулу на:

=SUM(O2)*100+SUM(P2)*150+SUM(Q2)*200
2

Используйте строку 2, чтобы разобрать строку 1. Например, ячейка A2 будет =IF(ISNUMBER(A1),A1,0) . Это заменит не числа с 0 в строке 2. Сумма строки 2.

2

Ваша формула не SUM три клетки. Другими словами, это НЕ то же самое =sum(A1:D1) . Скорее вы умножаете и суммируете продукты, отсюда и ваша ошибка.

Попробуйте (изменив ссылку на ячейку на те ячейки, которые вы хотите обработать)

=SUM(IF(ISNUMBER(B2:D2),B2:D2)*{100,150,200})

вводится как формула массива, удерживая Ctrl + Shift при нажатии Enter

Если вы сделаете это правильно, Excel установит фигурные скобки {...} вокруг формулы.

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