Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Приведение времени внутри суток к 24-часовому виду, с помощью VBA
 
surkenny, есть нужен пример-образец csv — прикрепляю
Приведение времени внутри суток к 24-часовому виду, с помощью VBA
 
В CSV-выгрузке с Индии время событий (убраны из файла-примера, оставил только дату и время) приходит в совершенно неудобном временном формате:

1) новые сутки они начинают с 12:00 (наша первая минута ночи 00:01 у них идёт как 12:01) — тут проблема в том, что точно так же обозначается первая минута после полудня. То есть, дальше часы ночного/утреннего времени идут 01:** — 09:**, дальше 10:**, дальше 11:**, а дальше снова 12:** (только уже дня). И возникает путаница во времени вида 12:** — это про после полуночи или про после полудня?

2) после часу дня у них идёт снова 01:** — 11:** (что соответствует «нашим» 13:** — 23:**)

Строки  (события) идут в том порядке, в каком они происходили (сверху вниз хронология от крайних к более старым). Проблема в том, что когда  начинаешь сортировать — этот исходный обратный хронологический порядок перепутывается, и дальше  начинается хаос в том плане, что события дня перемешиваются с событиями ночи.

Нужен макрос, который приводит время в стандартный 24-часовой вид. То есть, когда сутки начинаются с 00:00, 00:01 и заканчиваются 23:59. А каждая минута дня имеет уникальное временное значение.
Изменено: Иван Мельников - 16.06.2022 12:57:53
Приведение времени внутри суток к 24-часовому виду, с помощью VBA
 
расписал алгоритм как я его вижу... может есть проще, но не придумал...
Изменено: Иван Мельников - 15.06.2022 17:52:27
Приведение времени внутри суток к 24-часовому виду, с помощью VBA
 
жёлтым — видоизменённое время по пункту 1 из шапки темы (полночь с минутами не 12:**, а 00:**)
зелёным — видоизменённое время по пункту 3 из шапки темы (после полудня 24-часовой формат чтобы не путать с «до полудня»)
и отдельный случай на такой день как 9 июня (см. комментарий строк 281 — 318)
Приведение времени внутри суток к 24-часовому виду, с помощью VBA
 
В CSV-выгрузке с Индии приходят события в совершенно неудобном временном формате:

1) новые сутки они начинают с 12:00

2) дальше идут 01:** — 09:**, дальше 10:**, дальше 11:**, а дальше снова 12:** (только уже дня).
3) далее снова 01:** — 11:** (что соответствует «нашим» 13:** — 23:**)

Строки (события) идут в том порядке, в каком они происходили (сверху вниз от новых и в историю) — иначе вообще было бы не разобрать что за чем следует (и что было до полудня, а что было после).

Но когда начинаешь сортировать да фильтровать — порядок перепутывается и дальше начинается хаос в том плане, что день путается с ночью.

Есть идеи как (наверное макросом) приводить время в вид когда сутки начинаются с 00:00, 00:01 и заканчиваются 23:59 ?

При этом основная сложность (для меня) в том, чтобы по факту существования хотя бы одной транзакции за первые/вторые 12 часов (ведь как иначе разберёшь A. M. это или P. M.) уже можно было «правильно» переписать время
Изменено: Иван Мельников - 15.06.2022 12:37:59
Условное Форматирование раскрашивает непустые ячейки, в которых содержится формула иногда ничего не возвращающая, окрашивает ненужное
 
По всей видимости, у Вас другое представление о «должном» названии — может, на него и поменяете?
Тем временем если бы Вы объяснили смысл (почему работает) — возможно, было бы проще подобрать "удачное" название темы.
Могу предложить разве что: «Условное Форматирование раскрашивает непустые ячейки, в которых содержится формула иногда ничего не возвращающая». Но я бы сам, скорее всего, так не искал...
Изменено: Иван Мельников - 15.06.2022 12:34:22
Условное Форматирование раскрашивает непустые ячейки, в которых содержится формула иногда ничего не возвращающая, окрашивает ненужное
 
Вы правы, цитату убрал.
Предложенное Вами решение эстетически короче. А как оно работает? Всмысле почему)
Изменено: Иван Мельников - 15.06.2022 12:32:35
Условное Форматирование раскрашивает непустые ячейки, в которых содержится формула иногда ничего не возвращающая, окрашивает ненужное
 
Да, работает. Спасибо! Тема закрыта)
Изменено: Иван Мельников - 14.06.2022 21:13:40
Условное Форматирование раскрашивает непустые ячейки, в которых содержится формула иногда ничего не возвращающая, окрашивает ненужное
 
В столбце 4 содержится формула. Формула такая, что или она отдаёт число или "" (чтобы столбец визуально выглядел пустым). На этот столбец задано условное форматирование (с 3-ей по 20ю строку в файле-примере). Условие банально: больше нуля — зелёным, меньше нуля — красным.

Проблема состоит в том, что УФ воспринимает ячейки с "" как непустые и соответственно > 0.

Пытался что-то придумать, безуспешно...

Может кто-то решал у себя похожий нюанс? Прошу помощи форума  :idea:  
Изменено: Юрий М - 15.06.2022 12:13:40
Страницы: 1
Наверх