Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Суммирование времени за месяц.  [new]
Максим84
Member

Откуда:
Сообщений: 9
Добрый вечер!

Подскажите, пожалуйста,

есть таблица Архив производство по ней сделана форма.
В этой форме в последнем Столбце водятся отработанное время за день.
Над формой в поле Время за месяц не получается суммировать общая количество время оно доходит до 23:59 и сбрасывается.

Помогите, пожалуйста, как это сделать чтобы показывалось общее время за месяц.

И также посмотрите, пожалуйста, поля Заработок за час всё ли верно.

К сообщению приложен файл (Производство.rar - 35Kb) cкачать
12 янв 19, 23:00    [21783842]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
Максим84
Member

Откуда:
Сообщений: 9
Уважаемые форумчане, помогите, как это сделать кто-нибудь знает?
13 янв 19, 12:31    [21783962]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
Кривцов Анатолий
Member

Откуда:
Сообщений: 149
Максим84
Время за месяц не получается суммировать общая количество время оно доходит до 23:59 и сбрасывается.

Оно не сбрасывается, а добавляет день, который при кратком формате времени не отображаетя. Если указать полный формат даты, то увидите чудное значение 01.01.1900 00:06:00 (на самом деле это 1 день и 6 минут). Рекомендую суммирование выполнить в скрытом поле, а отображать комбинацию функций Day, Hour, Minute.
Например, если скрытое поле обозвать "ВсегоЧМ", то формула может выглядеть так:
=Day([ВсегоЧМ])*24+Hour([ВсегоЧМ]) & " ч. " & Minute([ВсегоЧМ]) & " м." 

А в поле "заработок за час" указать:
=[Поле17]/(Day([ВсегоЧМ])*24+Hour([ВсегоЧМ]))
14 янв 19, 14:06    [21784732]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5457
1 Создать в таблице 2 числовых поля-часы и минуты (создавая форму принять меры чтоб в эти поля не попали цифры >23 и >59 соответственно)
2 Написать 2 простейших функции и использовать их при создании формы

К сообщению приложен файл (tmp.rar - 13Kb) cкачать
14 янв 19, 20:45    [21785180]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
Максим84
Member

Откуда:
Сообщений: 9
Кривцов Анатолий, думал что ни кто не поможет итак довно не заходил. Большое спасибо посмотрю.
16 янв 19, 15:51    [21786891]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
Максим84
Member

Откуда:
Сообщений: 9
sdku, Спасибо большое посмотрю.
16 янв 19, 15:53    [21786895]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
Максим84
Member

Откуда:
Сообщений: 9
Кривцов Анатолий,
автор
Рекомендую суммирование выполнить в скрытом поле, а отображать комбинацию функций Day, Hour, Minute.
1.Я правильно по нил что это сделать нужно в запросе2 в последнем столбце ( который нужно назвать ВсегоЧМ) в котором у меня и не получается таг же суммировать.(вылезает ошибка)
2. =Day([ВсегоЧМ])*24+Hour([ВсегоЧМ]) & " ч. " & Minute([ВсегоЧМ]) & " м." вот этот код нужно в вести в поле время за месяц?

Заранее Спасибо.
16 янв 19, 18:04    [21787147]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5457
Максим84,
Если еще актуально.
запрос:
[время]-поле таблицы со значением времени в кратком формате
SELECT Sum(vm([время])) AS времяМ, vrItog([времяМ]) AS времяЧМ
FROM tbl;
функции:
Function vm(vr)
vm = Left(vr, InStr(vr, ":") - 1) * 60 + Mid(vr, InStr(vr, ":") + 1, 2)
End Function

Function vrItog(minut)
Dim cas
cas = minut \ 60
vrItog = cas & " часов " & minut - 60 * cas & " минут"
End Function
вчера, 03:21    [21787417]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
Максим84
Member

Откуда:
Сообщений: 9
sdku, да ещё актуально.
Я новичок только начинаю изучать и не всегда получается разобраться что куда подставлять. Если это могло бы как нибудь быть развернуто, то был бы признателен.
А так Спасибо.
вчера, 19:25    [21788275]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5457
Максим84,

К сообщению приложен файл (времяСумма.rar - 14Kb) cкачать
вчера, 20:15    [21788303]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5457
вдогонку:
поле [время] в таблице может быть текстовым с маской 00:00;;_
а функция для определения времени в минутах такой:
Function vm1(vrText)
vm1 = Left(vrText, 2) * 60 + Mid(vrText, 3, 2)
End Function

vrItog без изменений
вчера, 20:56    [21788317]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5457
Кривцов Анатолий
...Если указать полный формат даты, то увидите чудное значение 01.01.1900 00:06:00 (на самом деле это 1 день и 6 минут)...

Вы в этом уверены?

К сообщению приложен файл. Размер - 46Kb
сегодня, 01:50    [21788390]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
__Michelle
Member

Откуда:
Сообщений: 2992
sdku
Кривцов Анатолий
...Если указать полный формат даты, то увидите чудное значение 01.01.1900 00:06:00 (на самом деле это 1 день и 6 минут)...

Вы в этом уверены?

А у меня получается.
? Format(DateAdd("n",10,#23:54#),"General Date")
31.12.1899 0:04:00

? Format(#23:54#+10,"General Date")
09.01.1900 23:54:00
сегодня, 10:59    [21788537]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5457
__Michelle,
А что такое 10 и что дает все это "преобразование"(в контексте вопроса ТС)
сегодня, 12:29    [21788651]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
__Michelle
Member

Откуда:
Сообщений: 2992
sdku
__Michelle,
А что такое 10
В первом случае - минуты, во втором - дни.
сегодня, 13:26    [21788733]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
__Michelle
Member

Откуда:
Сообщений: 2992
sdku
и что дает все это "преобразование"(в контексте вопроса ТС)
Покажу на примере:
#02:55#+#23:20#+#02:55#+#23:20# дает в результате устного счета 52 часа 30 минут, то есть, 2 дня 4 часа 30 минут.
Проверяем программно, используя знание "этих преобразований".
Как известно, #30 December 1899# - нулевая дата.
? #02:55#+#23:20#+#02:55#+#23:20#
01.01.1900 4:30:00 
? DateDiff("d",#30 December 1899#,#02:55#+#23:20#+#02:55#+#23:20#)
2 
? format(#02:55#+#23:20#+#02:55#+#23:20#,"hh:mm")
04:30
Все сходится - 2 дня 4 часа 30 минут.
сегодня, 13:44    [21788750]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5457
Если возникнет необходимость решать подобную задачу Вы,серьезно, выберите такой способ?
А ТСу можно посоветовать пересмотреть подход к учету рабочего времени и не создавать искусственных трудностей, там, где их нет
сегодня, 14:08    [21788771]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
__Michelle
Member

Откуда:
Сообщений: 2992
sdku
Если возникнет необходимость решать подобную задачу Вы,серьезно, выберите такой способ?

Очень может быть. Мало ли, какие бывают задачи.
Но при чем тут это?
Вы выразили сомнение в решении, предложенном Анатолий (Киев).
Я показала, что сомневаетесь зря - все работает.
сегодня, 14:43    [21788787]     Ответить | Цитировать Сообщить модератору
 Re: Суммирование времени за месяц.  [new]
Максим84
Member

Откуда:
Сообщений: 9
sdku,
Добрый вечер! Спасибо за подсказку.
Скажите, пожалуйста, как теперь сделать так, чтобы получить результат суммировался не в днях, а в месяцах.
И как сделать так, чтобы полученный результат вставлялся в форме Поиск по дате в поле “ время за месяц” и получалось бы заработок за час с помощью деления на “ сумму за месяц”

К сообщению приложен файл (проба.rar - 43Kb) cкачать
сегодня, 16:13    [21788888]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить