Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


13462 / 76738 ←次へ | 前へ→

【68781】時刻シリアル値には誤差が生じますか?
質問  たかC  - 11/4/17(日) 11:03 -

引用なし
パスワード
   初めて質問させていただきますよろしくお願いします
以下のコードは

1、変数tmcntにシリアル値で10時を代入する
2、シリアル値で1分づつ足していってtmcntが11時になったら"11時ですよ"と表示させる

ことを意図したものです。

ところが、tmcnt=vol_11になっても
msgboxのほうに分岐が行きません
(ローカルウインドウでは両方とも0.458333333333333)

これは割り切れない数字を足していくという
誤差によって生じたものなのでしょうか?
それともなにか、きわめて基本的なことがわかっていないことによるものなのでしょうか?

お教えいただければ幸いです


Sub test_t()
Const vol_min As Double = 1 / 24 / 60
Const vol_10h As Double = 10 / 24
Const vol_11h As Double = 11 / 24
Dim tmcnt As Double
  
tmcnt = vol_10h

  For i = 1 To 100
  tmcnt = tmcnt + vol_min

    If timcnt = vol_11h Then
    MsgBox ("11時ですよ")
    End If

  Next

End Sub

0 hits

【68781】時刻シリアル値には誤差が生じますか? たかC 11/4/17(日) 11:03 質問
【68782】Re:時刻シリアル値には誤差が生じますか? neptune 11/4/17(日) 11:17 回答
【68783】Re:時刻シリアル値には誤差が生じますか? たかC 11/4/17(日) 12:17 お礼
【68784】Re:時刻シリアル値には誤差が生じますか? kanabun 11/4/17(日) 12:51 発言
【68785】Re:時刻シリアル値には誤差が生じますか? たかC 11/4/17(日) 13:20 お礼

13462 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free