永发信息网

求大神帮忙修改一下vba,提示下标超出范围,还有结果如何再输出到excel单元格里?

答案:2  悬赏:60  手机版
解决时间 2021-02-27 19:43
  • 提问者网友:那叫心脏的地方装的都是你
  • 2021-02-27 08:29
Sub test()
Dim i, k, j
Dim arr As Variant
arr = Range("a1:k" & [k65536].End(3).Row)
j = [m2]
Dim brr()
ReDim brr(LBound(arr) To UBound(arr), 1 To 10)
For i = LBound(arr) + 1 To UBound(arr)
For k = 2 To 11
brr(i - 1, k - 1) = Abs(arr(i + 1, k) - arr(i + 1, j) - [p2] * (i - 1))
Next
Range(i + 1, 18) = brr(i - 1, k - 1) '提示这一行超出范围。
‘我想把同一行brr相加起来输出到单元格里,请问怎么写?
Next
End Sub
最佳答案
  • 五星知识达人网友:走死在岁月里
  • 2021-02-27 10:05
不知道你要达到什么目的。

For i = LBound(arr) + 1 To UBound(arr)

当循环最后一轮时arr(i + 1, j)就会下标越界

For k = 2 To 11

执行完循环后k=12,brr(i - 1, k - 1)超范围

Range(i + 1, 18)

没有这种写法
全部回答
  • 1楼网友:詩光轨車
  • 2021-02-27 10:57
我是来看评论的
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯