前提・実現したいこと
記憶している年月日時分秒がきちんと次の秒のデータを読み込んでいるかを判定したい
発生している問題・エラーメッセージ
エラーメッセージはありません。
IF文がうまく判定してくれません。
該当のソースコード
ExcelVBA
1 2 If data(i).date = DateAdd("s", 1, data(i - 1).date) Then 3 i = i + 1 4 Else 5 MsgBox "データが正しくありません。" 6 Unload Standbyscreen 7 Exit Sub 8 End If
(問題が発生している文のみ張り付けています)
試したこと
解決法が全く分からず手付かずの状態です…
今記憶した年月日時分秒が一つ前に記憶した日付に1秒足した値と等しければ、次の値へ進む
もし違うようなら、データが正しくありませんとだし、処理を終了させる。
といった流れになっています。
このIF文が左右同じ値なのにelse文のほうに入ってしまい、困っています。。
数値はすべてこの表記です。 2020/3/1 7:18:04
このエラーのわけのわからないところは、秒数によって進むほうが違うということです。
2020/3/1 7:18:04ではelseに行くのに対して、次の2020/3/1 7:18:05では普通に動きます。
2020/3/1 7:18:06も普通に動き、2020/3/1 7:18:07ではまたelseのほうに進みます。
ウォッチウィンドウで見た値を張っておきます。
データが違うデータのため、上記の時間とは違います。
補足情報(FW/ツールのバージョンなど)
元々のデータはCSVファイルで、string型なので、data(i).dateに記憶させる際に、Date型に変換しています。
デバッグツールを利用して中の数値を見ても全く同じです。
見かけ上は同じでも実際には違うということでしょうか…?
回答よろしくお願いします…!
回答2件
あなたの回答
tips
プレビュー