No.1ベストアンサー
- 回答日時:
私自身はAccess上で日付の演算をすることが殆ど
ないのですが・・・(汗)
> 5.25→05:15という時間の数字に変換したい
テキストボックスの書式などでやってみたところ、どうも
「5.25→5:25」とされてしまうです。
ですので、KIG_4さんご自身が考えたとおり、
> 別のボックスに関数を使用した式をいれ
て、対応するしかないと思います。
(同じ数値を、書式設定だけで「5:15」と「5:25」という
異なる意味の数値に切り替えられるとは考えにくいので)
但し、関数による計算結果を表示する場合、
そのテキストボックスは編集不可(=表示専用)となって
しまいますので、ご注意下さい。
新規テキストボックスに設定する式としては、
=Format(CDate([元のテキストボックス]/24), "hh:nn")
になります。
【式の説明】
日付/時刻関連の関数は「整数の1」=「1日」の扱いと
なります。
そのため、まず「5.25」を24で割って「1日(=24時間)の
何分の1に当たるのか」を算出します。
次に、CDate関数を使用して、Accessに、この演算結果
の小数を日付/時刻として認識させます。
最後に、Format関数で、「05:15」の書式で表示させて
います。
(「hh」で時間(Hour)を2桁表示、「nn」で分(miNute)も
2桁表示、と指定)
※「分」が「m」ではないのは、通常、月(Month)の方に
割り当てるためです。
但し、今回の場合は「"hh:mm"」と指定しても、一応
正しく「分」として表示されます。
(「時」と「月」のみを組み合わせて扱うことは通常はない
ので、その場合は「m」を分として扱うロジックが上記
関数の内部に組み込まれているものと思います)
DexMachinaさん。
回答、ありがとうございます!
すごく、参考になりました。
パスワードが不明になり、お礼が遅れ申し訳ありませんでした。
皆さんの回答を参考に、めっちゃスマートではないのですが完成することができました。
「5.25」をIntの切捨てを使い「5」を算出。
そこから元の数字の「5.25」-「5」で「0.25」を算出。
「0.25」×60分=15
「5」と「15」を時間に直し、足し算にて「5:15」という形式にできました。
皆さんの回答、本当にありがとうございました!!
No.3
- 回答日時:
設計思想としては邪道かもしれませんが、難しく考えないで
数値
0・・・25・・・50・・・75・・・100
に対応する分算出テーブル
0・・・15・・・30・・・45・・・60
を作りリンクさせるのが簡単で早いです。
これで確実に不具合なく機能するものをまず作って、
書式なり関数なりでかっこよく?整えるのが良いと思います。
どうもlavvさん。
回答ありがとうございます!
一応、下記のやり方で対応することにしました。
スマートではないのですけどね(汗)
ご協力、ありがとうございます!
No.2
- 回答日時:
文字列に、変換するためには、
Function ConvtDecToHM(strDec) As String
ConvtDecToHM=Format(TimeSerial(Int(strDec), Int((strDec - Int(strDec)) * 60), 0), "HH:MM")
end function
のような関数を作るのが手軽です。
ShowMeHowさん。
回答ありがとうございました!
関数の作成、までは知識が不足しており、理解できませんでした(涙
しかし、文中にありました式を参考になんとか対応することができました。
ご協力、ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
オンライン健康相談gooドクター登場
24時間365日いつでも医師に健康相談できる!詳しくはコチラ>>
-
[MS Access]クエリで変換 hhmm(数値型)⇒hh:mm(日付/時刻型)
その他(Microsoft Office)
-
アクセスのクエリで秒→時間、時間→秒に変換したい
Access(アクセス)
-
アクセス クエリ 時間の合計
Access(アクセス)
-
-
4
Accessで24時間を超える時間の入力ができない。
Excel(エクセル)
-
5
時間の足し算
その他(データベース)
-
6
ACCESSの24時間以上の表示について
その他(Microsoft Office)
-
7
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
8
アクセス上で4桁の数字を時刻として何時間経過したか計算する方法
Access(アクセス)
-
9
時間項目を60進数から10進数へ変換する方法
SQL Server
-
10
ACCESSでの時間外計算方法
その他(データベース)
-
11
Accessで所要時間の足し算
その他(データベース)
-
12
ACCESSの時刻の引き算
Access(アクセス)
-
13
アクセスVBAのMe!と[ ]
Access(アクセス)
-
14
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
15
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
16
ACCESS、時間ごとの集計の仕方は?
その他(データベース)
-
17
Accessの日付時刻型から日付、時刻カラムを作る
Access(アクセス)
-
18
アクセスで時間計算(24時間)をしています
その他(Microsoft Office)
-
19
ACCESSの時間帯の抽出について
その他(Microsoft Office)
-
20
AccessのRefresh・Requery・Repaintの違い
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
テーブルの主キーをdate型...
-
5
ExcelのSUMPRODUCTで日付の範囲...
-
6
最新日付のデータを取得したい
-
7
今日の日付が入った行のデータ...
-
8
会社の〇〇部と〇〇課の違いっ...
-
9
エクセルVBAでUserFormを起動し...
-
10
wordで文字の上に線を引きたい...
-
11
Excel VBAで「プログラム実行」...
-
12
Accessのマクロでモジュールを...
-
13
全角空白のTRIMができない...
-
14
WHERE句の実行順序
-
15
Access VBAで行ラベルが定義さ...
-
16
PL/SQLカーソルの2重FORループ...
-
17
或るプロシージャの呼び出し元判定
-
18
ACCESS マクロをモジュールに変...
-
19
DBMS_OUTPUT.PUT_LINEを実行し...
-
20
VB2010 DataGridからmdb更新
おすすめ情報
公式facebook
公式twitter