Форум программистов, компьютерный форум, киберфорум
Наши страницы

MS Access

Войти
Регистрация
Восстановить пароль
 
markusdod
8 / 8 / 0
Регистрация: 07.12.2012
Сообщений: 136
#1

Можно ли заставить Access считать секунды? - MS Access

09.04.2016, 00:18. Просмотров 226. Ответов 2
Метки нет (Все метки)

Добрый вечер
в принципе вопрос в заголовке
пример здесь
в примере 2 варианта попытки решить проблему
необходимо отобразить оставшиеся время до дня м на форме
1.секунды отображает но врёт с прошедшим временем
2.не считает секунды
Код
Private Sub Form_Timer()

    Me!Поле0 = Now
    Me!Поле2 = DateDiff("d", Поле0, Forms![frm1]![subqrvTbl1].[Form]![den]) 
    Me!Поле4 = DateDiff("h", Поле0, Forms![frm1]![subqrvTbl1].[Form]![den]) Mod 24
    Me!Поле6 = DateDiff("n", Поле0, Forms![frm1]![subqrvTbl1].[Form]![den]) Mod 60
    Me!Поле8 = DateDiff("s", Поле0, Forms![frm1]![subqrvTbl1].[Form]![den]) Mod 60

Dim ДНЕЙ, ЧАСОВ, МИНУТ, СЕКУНД, ИНТЕРВАЛ_МИНУТ As Long
Dim ДЧМ As String
    ИНТЕРВАЛ_МИНУТ = DateDiff("s", Поле0, Forms![frm1]![subqrvTbl1].[Form]![den])
    ДНЕЙ = ИНТЕРВАЛ_МИНУТ \ 86400
    ЧАСОВ = (ИНТЕРВАЛ_МИНУТ - ДНЕЙ * 86400) \ 3600
    МИНУТ = (ИНТЕРВАЛ_МИНУТ - ДНЕЙ * 86400 - ЧАСОВ * 3600 - СЕКУНД) \ 60
    СЕКУНД = (ИНТЕРВАЛ_МИНУТ - ДНЕЙ * 86400 - ЧАСОВ * 3600 - МИНУТ * 60) \ 60
    ДЧМ = ДНЕЙ & " дней. " & ЧАСОВ & " часов. " & МИНУТ & " мин." & СЕКУНД & " cек." 
    
    Me!Поле12 = ДЧМ
End Sub
0
Вложения
Тип файла: rar db4.rar (21.1 Кб, 4 просмотров)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2016, 00:18
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Можно ли заставить Access считать секунды? (MS Access):

Как заставить поле правильно считать время - MS Access
Добрый день! Подскажите ,как решить следующую проблемку, буду очень признателен. Access 2007 В Разделенной форме присутствуют поля: ...

Функция Avg или как заставить ее не считать поля со значением 0,00 - MS Access
В общем столкнулся с проблемой.. В ыорме выдается среднее значение по каждому полю.. и ниже считается общее следнее.. так вот.. через Avg...

Как заставить Access не добавлять новую повторяющуюся запись - MS Access
У меня такая проблема. Существует БД на Access 97, состоящая из 2 таблиц. Эти таблицы имеют связь один - ко многим. Вторая таблица состоит...

Можно ли загрузить форму в базу Access из другой базы Access? - MS Access
Ситуация: есть база Access, лежит на сервере для коллективного доступа, размер - 10мб. В ней очень большое количество форм, которые ...

Можно ли считать это Data Access Layer? - C#
Делал задние: простое клиент-серверное приложение с использованием вебсервиса. Клиент обращался к вебсервису, тот ему отправлял данные,...

Можно ли в VB.NET заставить Listbox отображать полность строку таблицы как это делается в Access? - Visual Basic .NET
Сабж, собчтвенно. Подскажите как это можно сделать. Очень не хочется писать собственный компонент :)

2
mobile
Эксперт MS Access
22432 / 12750 / 2596
Регистрация: 28.04.2012
Сообщений: 13,942
09.04.2016, 01:14 #2
Первый вариант не учитывает того, что младшие элементы даты формы могут быть больше соответствующих из Now. Ведь если даже одной секунды не хватает, то сутки еще не прошли. Надо делать поправки и добавлять/вычитать 1, если младшие из формы больше таких же из Now.

Во втором варианте в СЕКУНД надо убрать последнее деление на 60. Выражение в скобках уже дает секунды. Деля на 60, получаете вечный 0.
1
markusdod
8 / 8 / 0
Регистрация: 07.12.2012
Сообщений: 136
09.04.2016, 01:33  [ТС] #3
Цитата Сообщение от mobile Посмотреть сообщение
Деля на 60, получаете вечный 0.
действительно прощёлкал
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.04.2016, 01:33
Привет! Вот еще темы с ответами:

Заставить прелоадер отработать 4 секунды - jQuery
Доброго времени суток. Делаю страницу предзагрузки. Вот мой код: #page-preloader { ... } #page-preloader .spinner {...

Как заставить Stopwatch отработать 3 секунды? - C#
Надо что бы три секунды проходило от старта , а придумать ничего не могу. st - это "TimeSpan st;" Button x = (Button)sender; ...

Класс для работы с секундомером (считать секунды до нажатия клавиши, результат переводить в минуты и часы) - C++
Ребята, помогите пожалуйста, я даже не подозреваю как начать, препод молчит, мне необходимо написать "Класс для работы с...

Как заставить программу считать комбинацию клавиш - C++ Builder
Как заставить программу считать комбинацию клавиш(делаю прогу-тест и хочу добавить возможность читов(чтобы юзер нажал определенную...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru