2010、win7だけどエラーでない 0676デフォルトの名無しさん (ワッチョイ cf11-4x8g)2017/08/05(土) 13:00:51.75ID:J2w+rLAY0>>675 時刻同士で割って見て 0677デフォルトの名無しさん (ワッチョイ 2b11-ysrI)2017/08/05(土) 13:07:29.37ID:j7okUzoP0 ダブルにキャストしてから計算したら ずれるのかな? 0678デフォルトの名無しさん (ワッチョイ 3b6d-iBdB)2017/08/05(土) 13:08:47.84ID:kXEyZiX90>>676 Sub foo() bar = Date / Date Debug.Print bar End Sub
つか、俺たちが釣られただけ? 0689デフォルトの名無しさん (ワッチョイ 0b06-gAma)2017/08/05(土) 23:56:01.89ID:dqSa99my0 質問者が軌道修正のために必要な情報を提供しないってのはここではザラにあることだろ。 そんなのによく付き合ってられんなー 0690デフォルトの名無しさん (ワッチョイ 03aa-dE0h)2017/08/06(日) 00:12:38.56ID:7dbJmn2Z0 質問室じゃねえんだよ 0691デフォルトの名無しさん (オッペケ Srd9-31he)2017/08/06(日) 12:22:25.32ID:hXGNAkd3r また教えたがりの無能が暴れとるのかw 0692デフォルトの名無しさん (アウアウカー Sac9-6G5k)2017/08/06(日) 16:09:44.69ID:wM27hiyIa 暴れているのはただの煽り 0693デフォルトの名無しさん (オイコラミネオ MM4b-4x8g)2017/08/07(月) 16:41:33.18ID:/LwpuoG3M>>678 dim a as date dim b as date dim test as date
Sub foo2() Dim a As Time Dim b As Time Dim test As Date
a = Time b = Time test_long = (a * 1) / (b * 1) 'ok test = a / (b * 1) 'ok test = 1 / b 'error test = (a * 1) / b 'error test = a / b 'error End Sub
Sub foo() Dim a As Variant Dim b As Variant Dim test As Date
a = Time b = Time test = a / b 'ok End Sub 0697デフォルトの名無しさん (ワッチョイ ad91-3aaz)2017/08/07(月) 20:36:42.78ID:5JtEoMJq0 Cdbl()で分母をDoubleにキャストすればいいだけじゃね? 0698デフォルトの名無しさん (ワッチョイ 3b6d-VAa7)2017/08/07(月) 20:39:22.17ID:PGc1T+jA0>>697 まぁ解決法としてはそれでも何でもいいし、そもそもdateで除算って事をやらないんだけど 根本的な原因が分からないと、変なとこで悪影響受けそう 0699デフォルトの名無しさん (ワッチョイ ad91-3aaz)2017/08/07(月) 20:54:07.86ID:5JtEoMJq0 Time って DateTime.Time プロパティのことだよな Property Time As Variant だからもともとVariant型
dim a As Time がエラーになるんだが 0700デフォルトの名無しさん (ワッチョイ ad91-3aaz)2017/08/07(月) 21:05:47.61ID:5JtEoMJq0 Date型はVBAのデータ型で"21:02:32"みたいな文字列なんじゃね? だから計算するとエラーになる 分子にDate型を持ってきたときはDoubleに自動的にキャストされてると予想 0701デフォルトの名無しさん (ワッチョイ 3b6d-9fgs)2017/08/07(月) 21:13:12.34ID:PGc1T+jA0>>699 ごめんなさい訂正前の送ってしまいました 定義部分は以下に変えてください
Sub foo2() Dim a As date Dim b As date 0702デフォルトの名無しさん (ワッチョイ cf11-4x8g)2017/08/07(月) 23:25:10.55ID:kmFs6vPH0>>695 2007じゃエラーでないよ 0703デフォルトの名無しさん (ワッチョイ 03aa-dE0h)2017/08/07(月) 23:33:20.74ID:elxVZ6u90 データベースのDATETIME型の値がそのままVBAのDate型変数にマップできれば楽なのに、 1900年以前だとうまくいかないのが残念だ。 0704デフォルトの名無しさん (ワッチョイ ad91-Mpnj)2017/08/07(月) 23:39:54.26ID:5JtEoMJq0>>702 2010とかだとエラーになる