• ベストアンサー

Access2003 での日数表示について

Access2003で、既に入力されているデータ(数値型)を「日数+時間」に換算したいのですが、 初心者なもので、よく分かりません。 例えば、「3」なら「0日3時間」、「25」なら「1日1時間」というように表示したいのです。 エクセルなら簡単に出来るのですが、Accessの場合はどうすれば良いでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

#1です。 そのつもりで答えたのですが。 例を挙げたのが理解されたでしょうか。 48(時間)と数値48が入っている場合(25時間を越える時間があるということだったので) Int([フィールド1]/24) & "日 " & Format(TimeSerial([フィールド1],0,0),"hh時") (データに分秒は無いとして) 例データの各行の左部分が時間数のつもり。 レポート上でも同じだと思うが。 やはり違うことなら、回答は無視してください。

kisen315
質問者

お礼

ありがとうございました。 私が、きちんと理解できていなかっただけでした。 仕事で必要になって、少しずつやりながら勉強し始めたのですが、 まだまだです。 本当に助かりました。 ありがとうございました。

その他の回答 (2)

  • shinkami
  • ベストアンサー率43% (179/411)
回答No.2

日と時に分けるだけでよいのなら 日 = Int((数値) / 24) 時 = 数値 - 24 * 日

kisen315
質問者

お礼

ご回答くださり、ありがとうございます。 私の質問の仕方が悪くて申し訳ありません。 レポート作成時に、テーブルに存在するデータ「時間」(数値型)のプロパティ:コントロールソース に式を入れて、「○日×時間」と表示できるようにしたいのです。 エクセルの書式設定で簡単にできるように、アクセスでも出来るのかな?と思った次第です。 そんな簡単な話ではなく、テーブル作成時から設定しなければいけないようでしたら、 それはそれで時間をかけて修正したいと思っています。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.1

自信ないが、答えが出ないようなので 例データ フィールド1 式1 1 0 01,00,00 42 1 18,00,00 31 1 07,00,00 2 0 02,00,00 21 0 21,00,00 39 1 15,00,00 3 0 03,00,00 選択クエリで、式は 式1: Int([フィールド1]/24) & " " & Format(TimeSerial([フィールド1],0,0),"hh,mm,ss") にした。 ただ見てくれがそう見えているだけということで、その後の計算などには使えるものではない。

kisen315
質問者

お礼

早速ご回答くださり、ありがとうございます。 私の質問の仕方が悪くて申し訳ありません。 レポート作成時に、テーブルに存在するデータ「時間」(数値型)のプロパティ:コントロールソース に式を入れて、「○日×時間」と表示できるようにしたいのです。 既にいない人が作ったAccessでして、急遽、表示を変えて欲しいということになった次第です。 お手数ですが、よろしくお願いします。

関連するQ&A

専門家に質問してみよう