プロが教える店舗&オフィスのセキュリティ対策術

アクセスで時間の足し算をやりたいのですが
なかなかうまくいきません
08:03:00とテーブルにテキスト型でデータがあり、
これに1分足したいと思います
クエリでさせたいと思いますがどなたか教えていただけないでしょうか?
もしくはVBやSQLでもかまいません

A 回答 (4件)

? Format(TimeValue("11:12:00") + TimeValue("23:56:00"), "hh:nn:ss")


11:08:00
? Format(CDate("11:12:00")+CDate("23:56:00"), "hh:nn:ss")
11:08:00

こういうように、足す=時刻を求めるという意味ならば Format関数も併せて・・・。
    • good
    • 1

Q、時間の足し算要領。


A、08:03:00は時刻。

? TimeValue("08:03:00") + TimeValue("00:01:00")
8:04:00
? CDate("08:03:00")+CDate("00:01:00")
8:04:00

これは、時間の足し算ではなく時刻を進めただけです。

? TimeValue("11:12:00") + TimeValue("23:56:00")
1899/12/31 11:08:00
? CDate("11:12:00")+CDate("23:56:00")
1899/12/31 11:08:00

ですから、このように当然に限度ってもんがあります。

[イミディエイト]
? XTime(XDate("11:12") + XDate("23:56"))
35:08

このような時間の加減算は、当然に標準外計算ですのでありえません。
ちょっと、<時間の足し算>という言葉使いに疑問を感じたので・・・。
    • good
    • 0

文字列として欲しい場合


SELECT Format(TimeValue([時刻])+(1/24/60),"hh:nn:ss") FROM テーブル;

時刻値として欲しい場合
SELECT TimeValue(Format(TimeValue([時刻])+(1/24/60),"hh:nn:ss")) FROM テーブル;

「1/24/60」の意味は
1日(24時間)は数値で「1」
1時間(1/24日)は数値で「1/24」
1分(1/60時間)は数値で「1/24/60」
を意味します。

SELECT Format(TimeValue([時刻])+TimeValue("00:01:00"),"hh:nn:ss") FROM テーブル;
SELECT TimeValue(Format(TimeValue([時刻])+TimeValue("00:01:00"),"hh:nn:ss")) FROM テーブル;
でもOKです。

なお「23:59:00」に1分を足しただけでは「結果に変な日付がくっ付いてくる」ので「24時間を超えたら0時に戻る」ようにしています。
    • good
    • 0

Selection.Value = TimeValue("08:03:00") + TimeValue("00:01:00")

    • good
    • 0
この回答へのお礼

皆様ありがとうございます。
うまくいきましたので後は自分なりにアレンジしていきます!

お礼日時:2008/02/07 14:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A