Використання оператора IF та ISBLANK для визначення діапазону комірок, якщо будь-яка з них містить інформацію в них


10

У мене є формула, в якій я перевіряю, чи немає у них комірок, чи є вони чи ні.

Якщо всі вони порожні, я хочу повернути ще одне.

Якщо будь-яка комірка діапазону не порожня, я хочу повернути значення Major Milestone Due.

Ось формула, яку я маю на даний момент:

=IF(ISBLANK(BM2:BQ2),"","Major Milestone Due")

Це повертає все так само Major Milestone Due, навіть якщо є певні діапазони рядків із усіма порожніми клітинками.

Відповіді:


16

COUNTAдасть кількість комірок у діапазоні, який не порожній .

Тож спробуйте ...

 =IF(NOT(COUNTA(BM2:BQ2)),"","Major Milestone Due")

Основна формула: NOT (COUNTA (BM2: BQ2)) застосовна для більш логічних операторів, таких як: AND (COUNTA (BN2), NOT (COUNTA (BM2: BQ2)))
— Rhak Kahr

9

Ваша формула правильна, якщо вона введена як формула масиву .

isblankЧи не працює для масиву , якщо не ввести його як формулу масиву, використовуючи ctrl+ shift+ enter. Це буде виглядати так, маючи навколо себе фігурні дужки:

{=IF(ISBLANK(BM2:BQ2),"","Major Milestone Due")}

Крім того, якщо - Counta це зробить і без проблем -

=IF(COUNTA(BM2:BQ2)=0,"","Major Milestone Due")


Формула масиву не зовсім коректна. Ця версія перейде від, TRUEлише FALSEякщо перша комірка в діапазоні містить значення. Щоб правильно перевірити всі комірки в діапазоні, ANDпотрібно додати -{=IF(AND(ISBLANK(BM2:BQ2)),"","Major Milestone Due")}
— Маркус Х'юз

@MarcusHughes чому б це було? Це формула масиву і працює над усім масивом
— Raystafarian

Я точно не знаю, чому саме так, але я протестував це (Excel 2010), і він не працює просто ISBLANK. Спробуйте ввести цю формулу, збережіть першу комірку в діапазоні порожньою, а потім введіть дані в пізнішу комірку в діапазоні .... ISBLANKУмова все одно повернеться TRUE. Тільки якщо ви введете дані в першу клітинку, вони повернуться FALSEправильно. Тепер спробуйте додати AND. Якщо будь-яка комірка в діапазоні отримує до неї дані, вона повертається FALSEяк слід. (Я припускаю, що це не просто якийсь дивний флейк з 2010 року.)
— Маркус Хьюз

2

Важливе, що слід врахувати, - це ваше визначення "порожній". Виходячи з того, що ви використовували формулювання "Я хочу повернути ще одне порожнє", виявиться, що ви визначаєте "порожнє" як комірки, які видаються порожніми, але які можуть насправді містити формулу, яка виводить ""і тому не порожня .

Методи COUNTAі ISBLANKметоди не працюватимуть, якщо ви хочете обробляти такі типи комірок як пробіли, оскільки ці дві формули шукають справді порожні комірки. Для обробки формул, які виводять "", у вас є два варіанти:


  • Якщо ви завжди знаєте розмір свого діапазону, ви можете скористатись одним із наступних:

    =IF( COUNTBLANK(BM2:BQ2)=5, "", "Major Milestone Due")
    =IF( COUNTIF(BM2:BQ2,"")=5, "", "Major Milestone Due")

    де 5 - розмір вашого діапазону. Цей метод не працює також з динамічними діапазонами.


  • Трохи складніша формула (принаймні, більш складна для пояснення!) Використовує SUMPRODUCT:

    =IF( SUMPRODUCT(--(BM2:BQ2<>""))=0, "", "Major Milestone Due")


(Зверніть увагу, що COUNTIF(BM2:BQ2,"<>")це те саме питання, що і COUNTA.)


-1

Я зайшов на цю сторінку в пошуках відповіді на майже ідентичне запитання.

Коли я побачив, що це COUNTAбуло згадано, я майже відразу зрозумів, що робити. У дещо іншому контексті я маю діапазон стовпців зліва від стовпця, що я хочу сказати, not startedякщо всі комірки в одному рядку порожні (порожні).

Наступна формула працює для мене.

=IF(COUNTA(P3:U3)=0,"Not Started"...)

Еліпсис вказує на те, що IFу моїй формулі є кілька додаткових функцій, які виконують подальші тести на дальність, якщо одна чи декілька заповнені.


Ласкаво просимо до Супер Користувача. Помітив, що ваша відповідь привернула голос. Ймовірна причина полягає в тому, що ми намагаємося уникати дублювання. Кожна відповідь має на меті забезпечити рішення, яке суттєво відрізняється від того, що вже було внесено. Це по суті дублює другу частину відповіді Райстафаріана.
— fixer1234

Мою відповідь слід було б подати як коментар.
— Девід А. Грей
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.