Разница времени с Excel и VBA

Я не могу получить среднее время от начала до конца некоторых действий,

Я пробовал 1K, но результат не правильный, каждый раз, когда у меня один день минус. изображение может объяснить лучше (это мой английский). В этом примере сумма моих действий il 480:52:56 часов, в VBA у меня другой результат, для VBA дата "19/01/1900 00:52:56", как 456:52:56 часов 24 часа минус почему такая разница? и как я могу получить такой же результат?

спасибо за любое предложение

2 ответа

Решение

Благодаря вашим комментариям я понимаю, что проблема в незначительных датах 1 марта 1900 года, поэтому я изменил выбор из:

Select [DataAttesa] as Data, avg(iif([totHours] > 1 and [totHours] < 61, dateadd("d",-1,CDate([totHours])) , [totHours])) as nr FROM [db_In$] Where TypeTrasp  = "AOG" group by [DataAttesa] Order by [DataAttesa]asc

теперь, когда я помещаю recordset.results в excel, значение верное. Спасибо вообще

Даты хранятся в виде серийных номеров, где первая действительная дата имеет значение 1. Это значение в Excel читается как 01/01/1900и в VBA как 31/12/1899, В Excel значение 60 возвращается 29/02/1900 которого нет в VBA, поэтому начиная со значения 61 и далее все значения будут возвращать одну и ту же дату в VBA и превосходить.

/ e: Кроме того, максимальное значение составляет 2958465 (31/12/9999), значения выше этого значения приведут к ошибке, а не к действительной дате

Другие вопросы по тегам