Подтвердить что ты не робот

Выведите значение ячейки NULL в Excel

Возможный дубликат:
Вернуть пустую ячейку из формулы в Excel

У меня есть оператор IF. Если ячейка = n, то сделайте что-нибудь, иначе выведите NULL

=IF(A1=5, "Success", NULL)   // #NAME?
=IF(A1=5, "Success", "NULL") // NULL (as in text, not actually NULL!)
=IF(A1=5, "Success", "")     // blank but not NULL
=IF(A1=5, "Success", 0)      // zero value but not NULL
4b9b3361

Ответ 1

Как вы указали, вы не можете выводить NULL в формуле excel. Я думаю, что это связано с тем фактом, что сама формула заставляет ячейку не быть NULL. "" - следующая лучшая вещь, но иногда полезно использовать 0.

- EDIT -

На основе вашего комментария вы можете проверить эту ссылку. http://peltiertech.com/WordPress/mind-the-gap-charting-empty-cells/

В нем подробно рассматриваются проблемы с графикой и значения различных значений, а также способы их обработки на диаграмме.

Я не знаком с VSTO, я боюсь. Поэтому я не буду очень помогать там. Но если вы действительно размещаете формулы в ячейке, тогда действительно нет способа. ISBLANK() проверяет только, является ли ячейка пустой или нет, у нее нет способа сделать ее пустой. Возможно написать код в VBA (и VSTO, я думаю), который будет работать на событии workheet_change и обновлять различные значения вместо использования формул. Но это было бы громоздко, а производительность ударилась бы.

Ответ 2

Я тоже был разочарован этой проблемой. Найти/заменить может быть полезно, хотя, потому что, если вы не поместите ничего в поле "replace", он заменит на -actual-NULL. Таким образом, шаги были бы чем-то вроде:

1: Поместите в формулу уникальную строку вместо вывода NULL (мне нравится использовать строку, подобную паролю)

2: Запустите формулу

3: Откройте Find/Replace и заполните уникальную строку в качестве значения поиска. Оставьте "заменить" пустым

4: Заменить все

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