|
本帖最后由 laoau138 于 2017-5-29 16:40 编辑
谁来解析VBA数组隔行跟随数字次数
Sub 隔行跟随()
zh = Worksheets("数据").Range("b65536").End(xlUp).Row '历史数据最后行号
sj = Worksheets("数据").Range("B3:G" & zh) '历史数据赋值到数组
Dim gs(1 To 33, 1 To 33) '定义用于存放跟随数据的数组
n = [AJ1].Value
For i = 1 To UBound(sj) - n '历史数据行循环
For j = 1 To 6 '历史数据列循环
gs(sj(i, j), sj(i + n, j)) = gs(sj(i, j), sj(i + n, j)) + 1 '计算跟随数据
'............................解释这一句看不懂gs(sj(i, j), sj(i + n, j)) = gs(sj(i, j), sj(i + n, j))
'...................gs(sj(i, j), sj(i + n, j)).............这一句究竟表示什么
Next j
Next i
Range("B3:AH35") = gs '跟随数据赋值到单元格
End Sub
用数组sj(i, j)和sj(i + n, j)来定位数组gs的元素(类似于平面直角坐标系), 然后定位一次就在该位置写入1, 之后再定位,就在该位置写入2(这就是加1的原因)
|
|