Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2011, 15:31   #1
vostok
Форумчанин
 
Регистрация: 29.04.2009
Сообщений: 119
По умолчанию Простейшая функция

Всем добрый день, вот заморочка на ровном месте, не работает функция типа
=ЕСЛИ(F1=$D3;$C3;0)
, где в ячейках F и D стоят даты. Если эти ячейки представить в общем формате, то видно, что они не равны. Почему?
Вложения
Тип файла: rar функция-дата.rar (5.7 Кб, 21 просмотров)
vostok вне форума Ответить с цитированием
Старый 19.04.2011, 15:57   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

В ячейке D3 находится значение 18.04.2011 11:52:32
В ячейке F1 находится значение 18.04.2011

Для Excel - это разные числа (даты), поскольку время не совпадает

Немного надо изменить формулу - тогда всё заработает:
Код:
  Ячейка: E3      Формула  (стиль A1):   =ЕСЛИ(E1=ОКРУГЛ($D3;0);$C3;0)
                  Формула  (стиль R1C1): =ЕСЛИ(R[-2]C=ОКРУГЛ(RC4;0);RC3;0)
EducatedFool вне форума Ответить с цитированием
Старый 19.04.2011, 16:05   #3
vostok
Форумчанин
 
Регистрация: 29.04.2009
Сообщений: 119
По умолчанию

Спасибо огромное, ФУНКЦИонирует, ссылки на даты из другой книги, там ничего не изменить.
vostok вне форума Ответить с цитированием
Старый 19.04.2011, 16:26   #4
vostok
Форумчанин
 
Регистрация: 29.04.2009
Сообщений: 119
По умолчанию

Уважаемый EducatedFool, обнаружилось, что формула (стиль А1) не считает равными числа после 12 часов дня. Как правильнее округлить? Что такое стиль R1C1 - не знаю, поэтому не применял.
Вложения
Тип файла: rar функция-дата.rar (5.4 Кб, 14 просмотров)
vostok вне форума Ответить с цитированием
Старый 19.04.2011, 16:56   #5
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

=ЕСЛИ(Целое(E1)=целое($D3);$C3;0) - отбросите часы таким образом
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 19.04.2011, 17:19   #6
vostok
Форумчанин
 
Регистрация: 29.04.2009
Сообщений: 119
По умолчанию

Вот сейчас точно все работает. Я рад. Весьма благодарен!
vostok вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Простейшая функция вычислить tg(x) homa371 Паскаль, Turbo Pascal, PascalABC.NET 7 20.01.2011 12:58
Простейшая программа в MFC iceman2112 Win Api 6 17.01.2011 05:33
Простейшая программа Hemul Общие вопросы C/C++ 9 05.10.2010 01:53
Простейшая авторизация на PHP gamer123 PHP 2 29.05.2010 09:05
Простейшая задачка на С++ и ассемблере. BANNEDandRRoD Фриланс 5 17.12.2009 19:29