powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Суммирование времени за месяц.
40 сообщений из 40, показаны все 2 страниц
Суммирование времени за месяц.
    #39758860
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер!

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

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

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

И также посмотрите, пожалуйста, поля Заработок за час всё ли верно.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39758932
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые форумчане, помогите, как это сделать кто-нибудь знает?
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39759309
Максим84Время за месяц не получается суммировать общая количество время оно доходит до 23:59 и сбрасывается.
Оно не сбрасывается, а добавляет день, который при кратком формате времени не отображаетя. Если указать полный формат даты, то увидите чудное значение 01.01.1900 00:06:00 (на самом деле это 1 день и 6 минут). Рекомендую суммирование выполнить в скрытом поле, а отображать комбинацию функций Day, Hour, Minute.
Например, если скрытое поле обозвать "ВсегоЧМ", то формула может выглядеть так:
Код: vbnet
1.
=Day([ВсегоЧМ])*24+Hour([ВсегоЧМ]) & " ч. " & Minute([ВсегоЧМ]) & " м." 


А в поле "заработок за час" указать:
Код: vbnet
1.
=[Поле17]/(Day([ВсегоЧМ])*24+Hour([ВсегоЧМ]))
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39759540
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1 Создать в таблице 2 числовых поля-часы и минуты (создавая форму принять меры чтоб в эти поля не попали цифры >23 и >59 соответственно)
2 Написать 2 простейших функции и использовать их при создании формы
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39760351
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кривцов Анатолий, думал что ни кто не поможет итак довно не заходил. Большое спасибо посмотрю.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39760354
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku, Спасибо большое посмотрю.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39760467
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кривцов Анатолий, автор Рекомендую суммирование выполнить в скрытом поле, а отображать комбинацию функций Day, Hour, Minute.
1.Я правильно по нил что это сделать нужно в запросе2 в последнем столбце ( который нужно назвать ВсегоЧМ) в котором у меня и не получается таг же суммировать.(вылезает ошибка)
2. =Day([ВсегоЧМ])*24+Hour([ВсегоЧМ]) & " ч. " & Minute([ВсегоЧМ]) & " м." вот этот код нужно в вести в поле время за месяц?

Заранее Спасибо.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39760592
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим84,
Если еще актуально.
запрос:
[время]-поле таблицы со значением времени в кратком формате
Код: vbnet
1.
2.
SELECT Sum(vm([время])) AS времяМ, vrItog([времяМ]) AS времяЧМ
FROM tbl;

функции:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
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
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761135
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku, да ещё актуально.
Я новичок только начинаю изучать и не всегда получается разобраться что куда подставлять. Если это могло бы как нибудь быть развернуто, то был бы признателен.
А так Спасибо.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761153
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим84,
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761159
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вдогонку:
поле [время] в таблице может быть текстовым с маской 00:00;;_
а функция для определения времени в минутах такой:
Код: vbnet
1.
2.
3.
Function vm1(vrText)
vm1 = Left(vrText, 2) * 60 + Mid(vrText, 3, 2)
End Function


vrItog без изменений
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761203
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кривцов Анатолий...Если указать полный формат даты, то увидите чудное значение 01.01.1900 00:06:00 (на самом деле это 1 день и 6 минут)...
Вы в этом уверены?
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761316
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdkuКривцов Анатолий...Если указать полный формат даты, то увидите чудное значение 01.01.1900 00:06:00 (на самом деле это 1 день и 6 минут)...
Вы в этом уверены?
А у меня получается.
Код: vbnet
1.
2.
3.
4.
5.
? 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
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761406
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__Michelle,
А что такое 10 и что дает все это "преобразование"(в контексте вопроса ТС)
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761472
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdku__Michelle,
А что такое 10В первом случае - минуты, во втором - дни.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761487
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdkuи что дает все это "преобразование"(в контексте вопроса ТС)Покажу на примере:
#02:55#+#23:20#+#02:55#+#23:20# дает в результате устного счета 52 часа 30 минут, то есть, 2 дня 4 часа 30 минут.
Проверяем программно, используя знание "этих преобразований".
Как известно, #30 December 1899# - нулевая дата.
Код: vbnet
1.
2.
3.
4.
5.
6.
? #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 минут.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761502
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если возникнет необходимость решать подобную задачу Вы,серьезно, выберите такой способ?
А ТСу можно посоветовать пересмотреть подход к учету рабочего времени и не создавать искусственных трудностей, там, где их нет
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761511
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdkuЕсли возникнет необходимость решать подобную задачу Вы,серьезно, выберите такой способ?
Очень может быть. Мало ли, какие бывают задачи.
Но при чем тут это?
Вы выразили сомнение в решении, предложенном Анатолий (Киев).
Я показала, что сомневаетесь зря - все работает.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761599
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku,
Добрый вечер! Спасибо за подсказку.
Скажите, пожалуйста, как теперь сделать так, чтобы получить результат суммировался не в днях, а в месяцах.
И как сделать так, чтобы полученный результат вставлялся в форме Поиск по дате в поле “ время за месяц” и получалось бы заработок за час с помощью деления на “ сумму за месяц”
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761689
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим84,
Не так не пойдет-у меня возникли сомнения в правильности структуры БД и хотелось бы узнать какую задачу,в целом, Вы решаете.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761714
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим84как теперь сделать так, чтобы получить результат суммировался не в днях, а в месяцах.
Мгновения спрессованы в года,
Мгновения спрессованы в столетия.
И я не понимаю иногда,
где первое мгновенье,
где последнее.(Роберт Рождественский)
P.S Огласите весь список пжлст.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761754
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku,
Каждый день я записываю во сколько пришёл и ушёл с производства. Знаю сколько я заработал за месяц хочу выяснить сколько я зарабатываю за один час.

А если как вариант водить вручную из запроса общее время, так может получится?
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761757
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sdku, авторправильности структуры БД
Эта не вся структура только её часть. Те таблицы запросы и формы где нужно что-то изменять или водить.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761794
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим84...Знаю сколько я заработал за месяц хочу выяснить сколько я зарабатываю за один час...Вот и разделите заработок на время
См.Form1 (Учтите,что это просто пример. И не забывайте что одно из базовых правил при создании БД,не помню энциклопедически,но как-то так:таблица должна полно,в нужном Вам объеме, описывать ОДНУ сущность,а не как у Вас в таблице "архив" и детали и цены и производство и учет рабочего времени )
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761802
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku,
Спасибо большое, по вашему примеру я нашёл что можно изменить ещё.
Придётся добавлять ещё таблицы и форму.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761810
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku,
помогите, пожалуйста, в последней базе которую прислали прописать выбор года, а то я совсем с кодам не дружу.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761813
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Максим84,
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761820
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим84sdku,
помогите, пожалуйста, в последней базе которую прислали прописать выбор года, а то я совсем с кодам не дружу.
Я извиняюсь , что сую свой нос. Может sdku занят, а ТС как всегда невтерпеж получить ответ.
Сделал Вам комбобокс выборка года . Далее ничего не делал , так как нет времени и мой Access отказывается открывать VBA скорее всего из за русской локализации access .
И еще немного покритикую . Зачем Вам в базе таблицы месяц и год. Вы что ? каждый год будете добавлять года? А не лучше ли года извлекать из таблицы работ ????? Про месяца я не настаиваю, так как их всего 12 , может и можно оставить. Спасибо. Хорошего дня. :))
P.S и советую иногда гуглить и заглядывать в FAQ , если Вам будут выкладывать готовые примеры , это большой пользы не даст. Нужно разобраться в логике. А написать говнокод, дело не хитрое.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761825
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761827
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Совсем хорошо(и по-моему правильно) было бы учитывать рабочее время "начало" и "конец" в полном формате даты-все бы легко считалось, а самое главное были бы не нужны таблицы год(она и так не особо нужна) и месяц,появилась бы возможность извлекать данные за период времени
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761832
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkMan, спасибо конечно, но мне в терпёж могу и день и два и неделю подождать так как делаю для себя, а не для кавота.
А вот какой смысл было подсказывать на половинно я не вижу. (ходя бы код написали бы).
P.S.Большим к вам уважением.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761834
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku, опять не стыковочка.
В таблице zp идёт сортировка по месяцу, а год не учитывается (туда просто добавить поле год) и через форму, когда выбираешь год рабочее время подставляется, а вот заработок привязан к месяцу.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761847
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим84А вот какой смысл было подсказывать на половинно я не вижу. (ходя бы код написали бы).
Ну от скромности Вы точно не умрете. :))
P.S полностью код пишут в подфоруме Работа , за определенное вознаграждение.
А здесь Вам могут оказать только помощь подсказками или исправлениями готового кода.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761857
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим84sdku, опять не стыковочка.
В таблице zp идёт сортировка по месяцу, а год не учитывается (туда просто добавить поле год) и через форму, когда выбираешь год рабочее время подставляется, а вот заработок привязан к месяцу.A где Вы увидели сортировку (Сортировка и отбор-разные вещи)
Еще как учитывается, просто поля не очищаются. Дополните процедуру блоком IF
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Sub zarabotok()
Dim vr, zp
vr = DSum("left(времяТекст,2)*60 + right(времяТекст,2)", "tbl", "month(дата)=" & Me.mes _
 & " and year(дата)=" & Me.комбинированная10) 'учет года
If IsNull(vr) Then 'добавлен блок IF
    MsgBox "нет записей отвечающих критерию"
        Me.zp = ""
            Me.minut = ""
        Me.zpCas = ""
    Exit Sub
End If
zp = DLookup("заработок", "ZP", "месяц=" & Me.mes)
Me.zp = zp
Me.minut = vr \ 60 & " час " & vr - (vr \ 60) * 60 & " мин.   (" & vr & " мин.)"
Me.zpCas = Round(zp / vr * 60, 2)
End Sub
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761865
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku,
Вы извините наверное будет глупый вопрос, но всё же что это такое ( Дополните процедуру блоком IF) это значит разместить кнопку и по нажатию прописать этот код?
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761869
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим84,
никаких элементов управления добавлять не надо-просто замените текст процедуры (добавились строки от "IF... " до "END IF" ) zarabotok на эту 21789284
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761878
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku, спасибо всё обновляется, но вот только доход по годам меняется как водить данные в таблицу zp там нет года, а через форму он подставляет по месяца.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761880
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Максим84,

забыл прекрепить.
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761883
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим84....Знаю сколько я заработал за месяц хочу выяснить сколько я зарабатываю за один час....Максим84sdku, спасибо всё обновляется, но вот только доход по годам меняется как водить данные в таблицу zp там нет года, а через форму он подставляет по месяца.Ну так добавьте поле"год" в таблицу ZP и отбор по нему в форму
Этот топик напоминает мне сказку "Каша из топора"-все что знал сказал, а дальше-сами
...
Рейтинг: 0 / 0
Суммирование времени за месяц.
    #39761888
Максим84
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku, Самое, самое большое СПАСИБО.
...
Рейтинг: 0 / 0
40 сообщений из 40, показаны все 2 страниц
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Суммирование времени за месяц.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]