Добрый день. Есть таблица с датами и временем. Нужен макрос который в соседнем столбце отобразит день это был или ночь, при условии, что день (с 9-00 до 18-00), ночь (с 18-00 до 9-00).
Разделение времени на "День" / "Ночь"
11.10.2017 10:57:22
|
|
|
|
11.10.2017 11:01:24
формула не подойдет?
Изменено: |
|||
|
|
11.10.2017 11:17:43
Больше спасибо
|
|
|
|
11.10.2017 11:31:52
Еще вариант
=ЕСЛИ(ОСТАТ(A2-"9:";1)<--"9:";"день";"ночь") И уточните - ровно 9:00 - это день или ночь?
Скажи мне, кудесник, любимец ба’гов...
|
|
|
|
11.10.2017 11:37:08
Кнопка цитирования не для ответа [МОДЕРАТОР]
Благодарю! Я принимаю 9:00 за утро, 18:00 за ночь. |
|
|
|
11.10.2017 11:38:04
Я тоже
Скажи мне, кудесник, любимец ба’гов...
|
|
|
|
11.10.2017 13:22:44
Скажи мне, кудесник, любимец ба’гов...
|
|
|
|
11.10.2017 13:33:14
Спасибо, правда про преобразование форматов времени там ничего не описано, но принцип стал более понятен.
Я просто всегда умножал на 1, но раз оно аж на 15% быстрее, то надо брать на вооружение!
Вот горшок пустой, он предмет простой...
|
|
|
|
11.10.2017 15:15:00
Скажи мне, кудесник, любимец ба’гов...
|
|||
|
|
11.10.2017 17:52:45
Вопрос состоял не в этом, а в том в какие числа Эксель будет интерпретировать текстовую строку "9:9" или "9.9" или "9/9". Теперь уже разобрался, спасибо за помощь.
Вот горшок пустой, он предмет простой...
|
|
|
|
16.10.2019 10:47:32
Добрый день!
Прошу проверить макрос. Для дня:
Для ночи:
Т.е. если время 19:00, макрос понимает что это больше 18:00 но не понимает что это меньше 6:00, в этом я пока что вижу проблему. Если просто поменять 1 и 0 местами в первом макросе чтобы выдавал 1 для ночи, то так же выдаст 1 если в ячейке времени нет данных, а мне нужен 0 если нет данных. Спасибо! |
|||||
|
|
16.10.2019 11:01:19
Не смотрел другие решения, вот мое.
|
|
|
|
16.10.2019 11:17:41
kinshas, 1 - нужно определить к какому времени относятся граничные условия
2. Если нет данных, то есть в ячейке 0 - это 0:00 и относится к ночи. просто нужно исключить расчет =IF(C10>0;--AND(MOD(C10;1)>1/4;MOD(C10;1)<3/4);"") =IF(C10>0;--OR(MOD(C10;1)<1/4;MOD(C10;1)>3/4);"")
Изменено:
По вопросам из тем форума, личку не читаю.
|
|
|
|
20.10.2019 10:15:29
Добрый день!
Спасибо всем участвующим! Проблема кроется в переходе суток через 00:00! Если F2=9:00 E2=18:00 то все просто
а вот если F2=18:00 E2=8:00 то есть имеется переход через 0000, то макрос не работает. Есть идея сделать два макроса(выставить граничные условия по совету БМВ ), один 18:00 до 23:59 дает 1, другой 00:00 до 8:00 дает 0, если А2=19:00 то вместе 1 и 0 дают 1 то есть ночь, а если А2=17:00 то макросы дают 0+0=0 день, 1+0=1 ночь. Фаил прикрепил. А как это сделать одним макросом, попроще что ли?
Изменено: |
|||
|
|
20.10.2019 10:43:12
1. Макросов в решении Вашей задачи еще нет - есть формулы.
2. Объясните, как это - ночь длится с 8 утра одного дня до 18 часов следующего дня?!
|
|||
|
|
20.10.2019 11:07:26
Ночь длится с 18 до 8, так и написанно.
|
|
|
|
20.10.2019 11:11:54
|
|
|
|
20.10.2019 11:14:10
|
|||
|
|
20.10.2019 14:41:41
Посмотрите пожалуйста прикрепленный файл, есть взлет (день/ночь) и посадка (день/ночь), если взлет днем то 1 в ячейку день, если ночью то в ячейку ночь, и формула от Murderface работает прекрасно, но если удалить данные(время) (оставив ячейки пустыми) из таблицы то в ячейку ночь прописывается 1, что не подходит для моих условий.
Выход найден;
Это ночь, но можно задать любое время, это не критично. |
|||||
|
|
20.10.2019 14:57:26
По вопросам из тем форума, личку не читаю.
|
|||
|
|
20.10.2019 17:27:54
|
||||
|
|
|||