• ベストアンサー

時間の足し算

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

質問者が選んだベストアンサー

  • ベストアンサー
noname#140971
noname#140971
回答No.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関数も併せて・・・。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

noname#140971
noname#140971
回答No.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 このような時間の加減算は、当然に標準外計算ですのでありえません。 ちょっと、<時間の足し算>という言葉使いに疑問を感じたので・・・。

全文を見る
すると、全ての回答が全文表示されます。
  • chie65536
  • ベストアンサー率41% (2512/6032)
回答No.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時に戻る」ようにしています。

全文を見る
すると、全ての回答が全文表示されます。
  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.1

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

rnyrevo
質問者

お礼

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

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ORACLEでのSQLについて

    SQLについて教えてください。 今、VBからORACLEデータベースにSQLを投げる処理を作っているのですが、 一つわからないことがあります。 例えば、アクセスでは、クエリで新しいテーブルを作成するという考え方がありますが データベースがORACLEでも同じようなことができるのでしょうか? 別に新しいテーブルを作成することに執着するわけではなく、テーブルのデータを削除 してから、そのテーブルにSQLにて引っ張ってきたデータを入れる という ものでもいいと考えています。そのやり方でもかまいませんので教えてください。 宜しくお願いします。 Oracle8.1.6 vb6

  • ACCESS2007 クエリで足し算したいができない。

    クエリで、足し算をしたいのですができません。 例えば、A+B=Cをしたいのですが、クエリ内でAとBが0のデータが空白になってしまっていて、足し算ができません。 AとBに数字が入っている場合は、足されています。 規定値を0に設定すればいいみたいですが、それがわかりません。 規定値を0に設定とはどうやるのですか? 元になっているテーブルに設定するのですか? クエリの方に設定するのですか?

  • Access97からAccess2003に移行したときの問題点

    VB4→VB6へ、SQLサーバ7→2000へ、Access97→2003へ移行を行っています。 旧システムでは、約5秒で完了する処理が、移行後は、2分51秒かかります。 どのような処理かというと、  1.SQLサーバのデータをSELECT  2.AccessのテーブルにINSERT(もしくは、UPDATE)  3.Accessのクエリ実行  4.Accessのレポート表示 です。 新旧比較してみたのですが、1.SQLサーバのデータのSelectは、差はありません。 2.AccessのテーブルにInsertでは、  Access97は、1秒、2003は、45秒です。 Updateとなると、Access97では、4秒、2003は、2分5秒となりました。 新システムの方が、遅くて性能が悪いようです。 どのように、チューニングしたらよいでしょうか? また、原因等、ご存知でしたら、教えていただけないでしょうか? よろしくお願いします。

  • SQLの書き方。。。

    アクセスで作成したAAAというテーブルとBBBというテーブルがあります。 AAAにはVBのフォームからテキストで入力したデータが入っています。 このデータをVBのコマンドボタンでBBBのテーブルに全て移したいのですが、どのようなSQLを書けばいいのか分かりません。 もし、お分かりになる人がいたら、回答お願いします。

  • エクセルで時間の足し算について

    エクセルで10時間50分と10時間50分を足し算すると、       10.50     + )10.50     --------    20.100 になってしまいます。私としては、分のところを60分で1時間と繰り上げて足し算されるように表記したいのですが、わかる方教えてください。すごく困っています。ここでは、21.40と自動的に表記されるようにしたいのです。 もう一つ、お聞きしたいのですが、時間と分の表記方法としては21:40のように、時間と分の間はセミコロンの方が好ましいでしょうか? 早急に御願いします。

  • MS accessのクエリの作り方について

    お世話になります。 画像のようなテーブル1があり、 クエリ結果(1)、クエリ結果(2)を出力しようとしています。 どのようにクエリを作ればよいか教えていただけないでしょうか。 access2000を使用しております。 VB・SQLの知識がないため、クエリで作ろうとしています。 よろしくお願いします。

  • エクセルの時間の足し算

    エクセル2010で時間の足し算をしたのですが、うまくいきません。 状況としては、 現在セルの表示形式は、h:mmです。 計算は、 0:10+0:13+0:06+0:09+0:05+0:30+0:04+0:06+0:07+0:30+0:10+0:30+0:09+0:11+0:03 なんですが、結果が1:33と表示されてしまいます。 30分が3つ入っているのでそれだけで1:30にはなるのですが・・・うまくいきません。 足し算は、オートサムで行っています。 もっと短い0:06+0:05+0:30は、ちゃんと0:41と表示されます。 どうすれば良いでしょうか。

  • Accessで所要時間の足し算

    アクセスで勤務時間の月間集計をするデータベースを作っています。 毎日の勤務を30分単位で、1時間30分なら「1.30」1時間なら「1.0」と入力していき月間の総時間を集計するのですが、当然のことながら普通に足し算すると、仮に「1.30」が4日なら合計「5.2」になってしまいます。これを「6時間(6.0)」と計算させたいのです。 日々の入力の形式は、1時間30分なら「1.30」という形で入力しなければならない事情があり「1.5時間」という形式はとれません。いろいろ試したのですがうまくいかず困っています。このような事は可能でしょうか

  • SQLサーバーのテーブルに対してアクセスで更新クエリを行ないたい

    こんばんは。 ・vista ・アクセス2003 ・SQL Server 2005 です。 SQL ServerからテーブルをMDBへリンクしているのですが そのテーブルに対し、アクセス側で更新クエリを実行しようとすると 実行時エラー '3157': ODBC--リンク テーブル'テーブル名'での更新に失敗しました。 [Microsoft][ODBC SQL Server Driver]時間切れになりました。(#0) と言うエラーになり、更新クエリができません。 どうすればアクセスでSQLサーバーのテーブルに対して更新クエリを行えるのでしょうか? よろしくお願いします。

  • 勤務時間を修正して一覧を作成したいのですが・・

    はじめまして。 テーブルA(勤務時間一覧)に 日付:Date 社員名:テキスト 当日勤務地:テキスト 勤務時間:数値 と言うテーブルがあります。 また、テーブルB(特別時間加算テーブル)に 社員名:テキスト 勤務地:テキスト 識別子:社員名&勤務地 というテーブルがあります。 そこで、 社員は複数の勤務地があり、テーブルBの一覧の条件識別子と一致する場合には、テーブルBの一致レコードのみ0.5時間を加算する。 といったクエリを作成したいと思います。 クエリ「修正勤務時間一覧」で、 テーブルAとBを使用して、勤務時間を加算するレコード、加算されないレコードを含め、 テーブルAの修正一覧を作成したいのですが、 クエリに 日付:テーブルA 社員名:テーブルA 当日勤務地:テーブルA 勤務時間:テーブルA 修正勤務時間:IIf(([社員名]&[当日勤務地])=[テーブルB]![識別子]),[勤務時間]+0.5,[勤務時間]) としたのですが、一覧表を作成することができません。 なにとぞ、お助けいただきたく宜しくおねがいいたします。 SQLでの作成をした方が良いと思って進めておりますが、 クエリもSQLも知識が浅いため、ままなりません。 ご指導をお願い致します。