質問 |
||
| QNo.3752929 | 時間の足し算 | |
|---|---|---|
| 質問者:rnyrevo |
アクセスで時間の足し算をやりたいのですが なかなかうまくいきません 08:03:00とテーブルにテキスト型でデータがあり、 これに1分足したいと思います クエリでさせたいと思いますがどなたか教えていただけないでしょうか? もしくはVBやSQLでもかまいません |
|
困り度:
|
||
| 質問投稿日時: 08/02/07 13:30 |
||
回答良回答20pt |
|
| ANo.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関数も併せて・・・。 |
|---|---|
| 回答者:Husky2007 | |
| 種類:アドバイス どんな人:一般人 自信:参考意見 |
|
| 回答日時: 08/02/07 14:22 |
|
| |
| この回答へのお礼 | この回答にお礼をつける(質問者のみ) |
回答 |
|
| ANo.3 | 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 このような時間の加減算は、当然に標準外計算ですのでありえません。 ちょっと、<時間の足し算>という言葉使いに疑問を感じたので・・・。 |
|---|---|
| 回答者:Husky2007 | |
| 種類:アドバイス どんな人:一般人 自信:参考意見 |
|
| 回答日時: 08/02/07 14:14 |
|
| |
| この回答へのお礼 | この回答にお礼をつける(質問者のみ) |
回答良回答10pt |
|
| ANo.2 | 文字列として欲しい場合 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時に戻る」ようにしています。 |
|---|---|
| 回答者:chie65536 | |
| 種類:回答 どんな人:一般人 自信:参考意見 |
|
| 回答日時: 08/02/07 14:12 |
|
| |
| この回答へのお礼 | この回答にお礼をつける(質問者のみ) |
回答 |
|
| ANo.1 | Selection.Value = TimeValue("08:03:00") + TimeValue("00:01:00") |
|---|---|
| 回答者:okormazd | |
| 種類:アドバイス どんな人:経験者 自信:参考意見 |
|
| 回答日時: 08/02/07 13:37 |
|
| |
| この回答へのお礼 | 皆様ありがとうございます。 うまくいきましたので後は自分なりにアレンジしていきます! |