先生是这样,我在设置了:Dim a(1 To 9, 1 To 9) As Double的情况下,用代码
For i = 1 To n For j = 1 To n Debug.Print a(i, j); Next j Debug.Print DFF1rs1.Update DFF1rs1.AddNew Next i
经过运行后若将结果在"立即窗口"中显示是成功的
而用代码
For i = 1 To n For j = 1 To n DFF1rs1("列" & j) = a(i, j)
Next j
DFF1rs1.Update DFF1rs1.AddNew Next i
想写入MDB表时则显示错误代码为:
实时错误'-2147352566(8002000a)':
超出当前范围.
先生是这样,我在设置了:Dim a(1 To 9, 1 To 9) As Double的情况下,用代码
For i = 1 To n For j = 1 To n Debug.Print a(i, j); Next j Debug.Print DFF1rs1.Update DFF1rs1.AddNew
Next i
经过运行后若将结果在"立即窗口"中显示是成功的
而用代码
For i = 1 To n For j = 1 To n
DFF1rs1("列" & j) = a(i, j)
Next j
DFF1rs1.Update DFF1rs1.AddNew
Next i
想写入MDB表时则显示错误代码为:
实时错误'-2147352566(8002000a)':
超出当前范围.
那就要去检查MDB 表这个字段设置是什么类型。而不是仅仅抓着
Dim a(1 To 9, 1 To 9) As Double 这句不放。这句不会导致后面的错误。
而是这句导致的错误:
DFF1rs1("列" & j) = a(i, j)
关键在于这个字段的类型,如字段类型是 数值 ,但没有去选择数值类型时,默认是 long ,那就会导致超范围了。