• ベストアンサー

Access2000での時間表示について

水泳競技記録に関し、10分の1秒、100分の1秒まで表示したいのですが、どうしたらいいでしょうか? 例 1:28.93(1分28秒93) 尚、記録の比較もしたいので、平均などの計算もできるような書式が前提です。 よろしくお願いします。

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

  • ベストアンサー
  • ARC
  • ベストアンサー率46% (643/1383)
回答No.1

うーん、浮動小数点型にして、秒単位で記録するのが一番いいように思いますね。 1分28秒93だったら、88.93として保存するわけです。 表示する時は必要に応じて、テキストボックスのコントロールソースに =[記録] \ 60 & ":" & [記録] mod 60 & format$([記録] - int([記録]),".00") などと設定してやればいいでしょう。(クエリ中に書く場合は、先頭の"="を削除します。)

Cloes
質問者

お礼

結局、回答を参考にさせていただき、本件は以下の様な形で解決することとしました。 数値型で、分、秒、コンマ秒をそれぞれのフィールドを作って入力 別のフィールドで分、秒を全てコンマ秒に換算 その数値にて平均や合計を算出 その結果を下記の様な式で、分,秒、コンマ秒形式で表示。 Int([コンマ秒自己最高]/6000) AS miMIN, Int(([コンマ秒自己最高] Mod 6000)/100) AS seMIN, ([コンマ秒自己最高] Mod 6000) Mod 100 AS ksMIN, IIf(Len(miMIN)=1,"0" & miMIN,miMIN) & ":" & IIf(Len(seMIN)=1,"0" & seMIN,seMIN) & "." & IIf(Len(ksMIN)=1,"0" & ksMAX,ksMIN) AS 100m個人メドレー最高 いろいろとお世話になりました。また、別の質問をしましたのでご検討いただければ 幸いです。

その他の回答 (1)

  • rickbon
  • ベストアンサー率0% (0/2)
回答No.2

平均等の計算が必要となると私も秒単位で記録するのがベストだと思います。 また、秒単位の記録を00:00:00として表示するARCさんの式はグレートです。私も横から勉強させていただきました。 ただもう少し凝るなら入力も分秒形式で入力した方がわかり易いですよね。 実は私も水泳記録ではないですが以前同じようなことで悩んだことがありまして、その時とった方法をご紹介します。 計算用の秒単位をを記録するフィールドとは別にID、分、秒を入力するフィールドを設けます。 入力は分、秒に対して行い、別にそれを秒に計算するクエリを作りました。[分]*60+[秒]という簡単な式の入ったクエリです。 でもってさらにこのクエリと記録テーブルをIDで結んだ更新クエリを作り、計算用秒単位のフィールドに書きこむというわけです。 分、秒を入力するフォームを作ってフォームが閉じる時にでもこの更新クエリが動作するようにマクロを作っておけば、常に計算用秒単位フィールドに自動入力できます。 回りくどい方法ですが、ご参考まで。

Cloes
質問者

お礼

ARCさんのお礼の欄に書きましたが、やはり、分、秒、それぞれ別のフィールドからスタートするのがいいようですね。 いろいろとありがとうございました。

関連するQ&A