Страницы: 1
RSS
Разная интепретация пустой ячейки в формате даты.
 
Здравствуйте.
Столкнулся с тем, что пустая ячейка в формате дат интерпретируется по-разному: если просто оставить пустой (зеленая ячейка), то в формуле работы с датами читают ее как 0, а если пустая ячейка сформирована формулой (желтая ячейка), то как "".
Вопрос: как сделать так, чтобы после вычисления формулы ячейка интерпретировалась экселом как пустая без формулы?
 
Код
=ЕСЛИ(A4=1;0)
Нужно от "#ЗНАЧ" избавиться? Или чтобы в любом случае пустая была? Тогда
Код
=ЕСЛИ(A4=1;"";"")
Изменено: _Igor_61 - 30.08.2017 20:02:39
 
_Igor_61, пробовал, не то получается - в ячейках пишется "00.01.1900", а мне это сильно визуально нагружает документ, да еще и с толку сбивает.
 
В каких ячейках и что именно должно или не должно писаться?
 
=(0&C3)-$C$1
=ЕСЛИ(ЕПУСТО(C3);"";C3)
Изменено: Catboyun - 30.08.2017 20:08:46
 
Цитата
_Igor_61 написал:
Нужно от "#ЗНАЧ" избавиться? Или чтобы в любом случае пустая была?
Надо от "#ЗНАЧ" избавиться, поскольку оно все формулы, которые ссылаются на эту ячейку, ломает. При этом не загружать лишним содержимым, зеленая ячейка - эталон, выглядет как пустая, но в формулах интерпретируется как 0.
Изменено: Дмитрийже - 30.08.2017 20:08:24
 
Цитата
Дмитрийже написал:
зеленая ячейка - эталон
Но в D3 тоже стоит "00.01.1900", и тут от него не надо избавляться? А в D4 надо? Что-то я недопонимаю.
 
Код
=ЕСЛИ(A4=1;"0";"0")
Может, так надо?
 
Цитата
_Igor_61 написал:
Но в D3 тоже стоит "00.01.1900", и тут от него не надо избавляться? А в D4 надо?
Более подробно изложу свою проблему.. У меня документ (достаточно громоздкий служебный, поэтому полностью выложить его не могу здесь), в нем есть столбцы формата Дата. Изначально данные в эти столбцы вносились вручную, поэтому ячейки этих столбцов могли быть заполнены или датами, или оставаться пустыми (в примере как зеленая ячейка), т.е. визуально в документе они были незаполненными. В дальнейшем эти ячейки использовались в формулах. Например
Код
=Бак.Студенты[ПоЗ. Дата]-Бак.Студенты[Служебный. ГН]
если ячейка содержала дату, получалась некая разница, если была пуста, тоже был результат, поскольку интерпретировалась она как 0.
После модификации файла эти ячейки дат были заполнены формулами
Код
=ЕСЛИОШИБКА((ВПР([@[ПоЗ. №]];Приказы;ПОИСКПОЗ(Приказы[[#Заголовки];[от]];Приказы[#Заголовки];0)));"")
такого вида, которые в результате начали давать либо некую дату, либо "" - пустую ячейку (и визуально она ничем не отличалась от доформульного состояния). Теперь, в формулах
Код
=Бак.Студенты[ПоЗ. Дата]-Бак.Студенты[Служебный. ГН]
получается либо некий результат, если
Код
=ЕСЛИОШИБКА((ВПР([@[ПоЗ. №]];Приказы;ПОИСКПОЗ(Приказы[[#Заголовки];[от]];Приказы[#Заголовки];0)));"")
возвращает в ячейку в виде результата некую дату, либо ошибку "#ЗНАЧ" (как в желтой ячейке в примере), если возвращается "" - пустая ячейка.
Так вот я хочу сделать так, чтобы
Код
=ЕСЛИОШИБКА((ВПР([@[ПоЗ. №]];Приказы;ПОИСКПОЗ(Приказы[[#Заголовки];[от]];Приказы[#Заголовки];0)));"")
либо дату, либо вместо "" такое значение, чтобы здесь
Код
=Бак.Студенты[ПоЗ. Дата]-Бак.Студенты[Служебный. ГН]
она опять же интерпретировалась как 0, хотя визуально оставалась либо пустой, либо "-" прочерком.

P.S.
Цитата
Catboyun написал:
=(0&C3)-$C$1
=ЕСЛИ(ЕПУСТО(C3);"";C3)
Cпасибо, но я не совсем понял как они решают мою задачу, тем-более тут дело не в формуле примера - это иллюстрация, я в суть хочу вникнуть решения задачи, а не изменить конкретную формулу.
 
В параметрах листа снять галку "Отображать нулевые значения". А формула
=ЕСЛИОШИБКА(ВПР(...);0)
Ячейки с нулями визуально будут пустыми.
 
vikttur, да, спасибо, или как здесь http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=69182&MID=s

но это косметическое решение, интересно можно ли в формуле "" поменять на что-то, чтобы отражалось как в зеленой ячейке примера.

P.S. Опять же, а если надо "вуалировать" "-", а не просто скрыть, как например делается форматирование для числовых ячеек, как быть в таком случае?
Изменено: Дмитрийже - 30.08.2017 23:42:52
Страницы: 1
Наверх