1

何時間も検索しましたが、簡単だと思いましたが、まだわかりません。

Access 2010 を使用しており、タスクの開始時刻を入力するフォームがあります。startTime フィールドはテキストなので、ドロップダウンを使用して完全な時間を選択できます (例: 11:00)。12:00; 13:00。

デフォルト値を次の 1 時間に設定するにはどうすればよいですか?

現在時刻が 12:32 の場合、デフォルト値は 13:00 です。現在時刻が 14:16 の場合、デフォルト値は 15:00 です。

編集:

正しい: =TimeSerial(Hour(time())-(Minute(time())>=1);0;0)

4

1 に答える 1

2

を使用して、 startTime文字列を日付/時刻値CDate()に変換できます。次に、時間を取得するために使用します。時間にプラス 1 を指定し、分と秒にはゼロを指定します。最後に、結果の日付/時刻値を文字列に戻すために使用します。DatePart()TimeSerial()Format()

次に示すのは、以下に含まれる機能をテストするイミディエイト ウィンドウ セッションです。

? NextHour("12:32")
13:00
? NextHour("07:00")
08:00

Public Function NextHour(ByVal pStartTime As String) As String
    Dim dteStart As Date
    Dim dteNext As Date

    dteStart = CDate(pStartTime)
    dteNext = TimeSerial(DatePart("h", dteStart) + 1, 0, 0)
    NextHour = Format(dteNext, "hh:nn")
End Function
于 2013-10-18T14:45:31.413 に答える