Windows2000 VB6.0(VBA)です。
ミリ秒を含んでる文字 "2005-10-27 16:15:32.337"で
簡単に計算をする方法を教えてください。
ミリ秒なし "2005-10-27 16:15:32" では
CDateで変換をして計算ができるのですが
ミリ秒を含んでる文字では ”型が一致しません”
とエラーがでて計算できません。
VB6.0(VBA)ではDate型または他の方法でのミリ秒の計算は
スマートにはできないのでしょうか?
エクセルでは計算式でできてしまうのに
エクセルのマクロではできないのがくやしくてしょうがありません。
エクセルではできるのでマクロでもできると思うのですが。。
良い方法があったら教えてください。
小数点以下(つまりミリ秒)の部分だけ抜き取って計算させればいいのでは?
1.000以上になれば1秒増えるということですよね?
ありがとうございます。
やっぱり それしかないのかな
今はこのようにやっています
s = Format(CDate(Left("2005-10-27 16:16:32.337", 19)) - CDate(Left("2005-10-27 16:15:32.000", 19)), "s")
ms = Right(Cells(y, EndTime列), 3) - Right(Cells(y, StartTime列), 3)
時間 = s * 1000 + ms
スマートには無理なようですね。
間違えました。
s = Format(CDate(Left("2005-10-27 16:16:32.337", 19)) - CDate(Left("2005-10-27 16:15:32.000", 19)), "s")
ms = Right("2005-10-27 16:16:32.337" , 3) - Right("2005-10-27 16:15:32.000", 3)
時間 = s * 1000 + ms
です。
ツイート | ![]() |