これは Excel で行う非常に単純な計算ですが、異なるレコードのテーブルの 2 つのフィールドを使用して Access 内でこれを行う方法に困惑しています。私が持っている 1 つのアプリケーションは、操作 STOPTime と次の STARTTime の違いを見つける必要があります。どんな助けでも大歓迎です。私はVBAが初めてです。
質問する
175 次
2 に答える
1
Sub samPle()
Dim startTime As Date
Dim endTime As Date
startTime = Time
'''Your Code
endTime = Time
Debug.Print DateDiff("n", startTime, endTime) ' difference in minutes
End Sub
于 2013-02-21T19:03:26.710 に答える
0
データに応じて問題にアプローチする方法は多数あるため、SQL に関する質問のデータを投稿することは非常に重要です。例えば:
テーブル:
ID EventTime EventType
1 17/02/2013 08:52:00 start
2 17/02/2013 09:52:00 stop
3 17/02/2013 11:52:00 start
4 17/02/2013 15:52:00 stop
SQL:
SELECT a.id,
a.eventtime AS Start,
a.eventtype,
(SELECT TOP 1 eventtime
FROM times b
WHERE eventtype = "stop"
AND eventtime > a.eventtime
ORDER BY eventtime,
id) AS Stop,
Datediff("n", [start], [stop]) AS RunTime
FROM times AS a
WHERE (( ( a.eventtype ) = "start" ))
ORDER BY a.eventtime;
結果:
ID Start EventType Stop RunTime
1 17/02/2013 08:52:00 start 17/02/2013 09:52:00 60
3 17/02/2013 11:52:00 start 17/02/2013 15:52:00 240
再コメント
SELECT a.id,
a.eventtime AS Start,
a.eventtype,
(SELECT TOP 1 eventtime
FROM times b
WHERE eventtype = "stop"
AND eventtime > a.eventtime
ORDER BY eventtime,
id) AS Stop,
Datediff("n", [start], [stop]) AS RunTime,
(SELECT TOP 1 eventtime
FROM times b
WHERE eventtype = "start"
AND eventtime > a.eventtime
ORDER BY eventtime,
id) AS NextStart,
Datediff("n", [start], [nextstart]) AS StartDiff,
Datediff("n", [stop], [nextstart]) AS DownTime
FROM times AS a
WHERE (( ( a.eventtype ) = "start" ))
ORDER BY a.eventtime;
于 2013-02-21T21:00:05.073 に答える