- 締切済み
時間の計算方法
VB超初心者です。 次の時間に関する関数を教えてください。 もちろん自作です。) 1 日数差を計算する。 ANS=DATEAB(A,B) A = "2004/01/08" B = "2003/12/25" ANS=15 2 時間差を計算する。 (1)A = "08:30:00" B = "08:25:00" ANS="00:05:00" (2)A = "00:10:00" B = "23:50:00" ANS="00:20:00"
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
・日数差を計算の方の一例 Private Sub Form_Click() d1 = Split("2003/12/25", "/") d2 = Split("2004/1/8", "/") h = DateSerial(d2(0), d2(1), d2(2)) _ - DateSerial(d1(0), d1(1), d1(2)) + 1 MsgBox h End Sub Split関数はエクセルVBAでは使えないと思います。 イベントをForm_Clickにしたのは特に意味はありません。 実際は関数Function DATEAB(A,B) d1=A:d2=B (上記コード) DATEAB=h End Function の引数A,Bでd1,d2にあたる文字列を渡してください。
私もVB小心者です。(違 日数、時間の計算は、DateDiff、DateAdd関数で行うのが一番簡単だと思いますが、専門家なら、もっと素晴らしい車輪(例 : 楕円形の車輪)を再発明してくれるかもしれません。 標準関数の機能が不満なら、専門家のフォローに期待しましょう。(^-^)
- taknt
- ベストアンサー率19% (1556/7783)
>次の時間に関する関数を教えてください。 >もちろん自作です。) 自作の関数を教えて欲しいというのでしょうか?(笑) 時間計算は、秒に直して計算したらいいと思いますよ。 つまり 時、分、秒と取り出し、 時×3600+分×60+秒をしてあげ それで 引き算して また 元に戻せばいいのですね。 それを自作してみてください。
お礼
質問の回答になってないな
お礼
無駄な書き込みが多いな