8

Я хочу вычесть две ячейки в Excel, но только если обе ячейки имеют значение. Более конкретно, в моем случае формула в ячейке E2 в настоящее время = D2-C2, но я хочу, чтобы она рассчитывалась только тогда, когда D2 имеет значение. (D2 = выигрыш, C2 = ставка и E2 = прибыль / убыток. Я не хочу, чтобы потеря прибыли рассчитывалась до тех пор, пока ячейка выигрыша не будет завершена.)

Может кто-нибудь помочь, пожалуйста?

Стив

3 ответа3

9

Поместите следующую формулу в ячейку E2, чтобы достичь желаемого:

=IF(ISBLANK(D2),"",D2-C2)

Если вы хотите, чтобы обе ячейки имели значение:

=IF(OR(ISBLANK(D2),ISBLANK(C2)),"",D2-C2)
0

Попробуйте это в ячейке E2:

=IF(AND(D2<>"",C2<>""),D2-C2,"")
0

Я могу вспомнить две возможные причины, по которым оба решения поначалу не работали:1) для расчета было задано значение «Вручную» 2) рассматриваемая ячейка была не совсем пустой (возможно, имел место пробел или табуляция после импорта)

1 не слишком вероятно. Вы можете покрыть 2, используя ISNUMBER вместо ISBLANK и AND вместо OR (скажем, в десять раз быстрее ...), следующим образом:

=IF(AND(ISNUMBER(D2),ISNUMBER(C2)),D2-C2,"")

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