Загальна формула
=IF(criteria,formula(),"")
Резюме
Щоб запустити формулу лише тоді, коли одна або кілька комірок не є порожніми, можна використовувати функцію IF із відповідними логічними критеріями. У наведеному прикладі формула в E5 має вигляд:
=IF(COUNT(C5:C7)=3,SUM(C5:C7),"")
Оскільки C7 не має значення на екрані вище, формула не показує результату. На екрані нижче C7 містить число, і відображається сума:
Пояснення
Мета цього прикладу - перевірити введення перед обчисленням результату. Ключовим моментом для розуміння є те, що будь-яку дійсну формулу можна замінити. Функція SUM використовується лише як приклад. Логіку також можна налаштувати різними способами відповідно до ситуації.
У наведеному прикладі ми використовуємо функцію IF разом із функцією COUNT. Критерій - це вираз, заснований на функції COUNT, яка підраховує лише числові значення:
COUNT(C5:C7)=3 // returns TRUE or FALSE
Поки діапазон містить три цифри (тобто всі 3 клітинки не є порожніми), результат має значення TRUE і IF запускає функцію SUM. Якщо ні, результат - FALSE, а IF повертає порожній рядок (""). Оскільки C7 не має значення на екрані вище, формула не показує результату.
Існує багато способів перевірити наявність порожніх комірок, і кілька варіантів пояснюються нижче.
За допомогою COUNTBLANK
Функція COUNTBLANK підраховує порожні клітинки в діапазоні, тому ми можемо написати трохи більш компактну формулу, як це:
=IF(COUNTBLANK(C5:C7),"",SUM(C5:C7))
Якщо COUNTBLANK повертає будь-яке число, крім нуля, функція IF обчислює як TRUE і не повертає нічого (""). Якщо COUNTBLANK повертає нуль, IF вважає FALSE і повертає суму.
З ISBLANK
У наведеному прикладі комірки введення знаходяться в одному суміжному діапазоні. У випадках, коли клітини не є разом, ви можете отримати таку формулу:
=IF(OR(ISBLANK(C5),ISBLANK(C6),ISBLANK(C7)),"",SUM(C5:C7))
Цей приклад використовує буквальний підхід до функції ISBLANK. Оскільки ми хочемо перевірити всі три клітинки одночасно, нам потрібно тричі використовувати ISBLANK всередині функції АБО. Це логічний тест всередині IF:
OR(ISBLANK(C5),ISBLANK(C6),ISBLANK(C7)
Коли OR повертає TRUE (принаймні одна комірка порожня), IF повертає порожній рядок (""). Коли OR повертає FALSE (жодна клітинка не порожня), IF запускає функцію SUM і повертає результат:
SUM(C5:C7)
З логічними операторами
Функцію ISBLANK можна замінити стандартними логічними операторами, як це:
=IF(OR(C5="",C6="",C7=""),"",SUM(C5:C7))
В якості альтернативи ми можемо поєднувати оператор () не рівний оператору () з функцією AND так:
=IF(AND(C5"",C6"",C7""),SUM(C5:C7),"")
Зверніть увагу, що функція SUM була переміщена до результату TRUE. Він буде працювати, лише якщо C5, C6 і C5 не порожні.
З COUNTA
Нарешті, ви можете використовувати функцію COUNTA для перевірки цифрового або текстового введення:
=IF(COUNTA(C5:C7)=3,SUM(C5:C7),"")
Поки діапазон C5: C5 містить три значення (цифри або текст), результат буде TRUE і функція SUM працюватиме. Це насправді не має сенсу для наведеного прикладу (що вимагає цифрового введення), але його можна використовувати в інших ситуаціях.