|
研究了半天,不想历遍行,最后用了 数组 套数组的办法. 把处理数组的 程序改了一下(原来是单数组-->套数组).
dim DataArr()
Dim tempRange As Range
Set tempRange = 指定表.Range(列号字母数组(0) & 数据标题行号 & ":" & 列号字母数组(列数 - 1) _
& 数据末行号).SpecialCells(xlCellTypeVisible)
'获取一个已筛选后的 range区域--->仅可见行
Dim lastCount As Long
If tempRange.Areas.count > 1 Then
For i = 1 To tempRange.Areas.count
ReDim Preserve DataArr(1 To i)
DataArr(i) = tempRange.Areas(i)
输出行数 = 输出行数 + UBound(DataArr(i))
Next
end if
'-------------------多层嵌套 获取数组的数据'
For k = 2 To UBound(DataArr) '取区域 Areas
For i = 1 To UBound(DataArr(k), 1) '取行
For j = 1 To 列数 '取列
debug.print DataArr(1)(1, 列号维度数组(j)) & DataArr(k)(i, 列号维度数组(j)) '输出需要的数据
Next j
Next i
Next k
|
|