xdragon 发表于 2014-8-10 14:03
不用step会多出判断环节,比如 if len(arr(i,1)) then
这样?- Sub xdragon()
- TT = Timer
- Dim arr, i&, j&, m&
- arr = [A1].CurrentRegion
- ReDim brr(1 To UBound(arr) * UBound(arr, 2), 1 To 4)
- For i = 2 To UBound(arr)
- If Len(arr(i, 1)) Then
- For j = 2 To UBound(arr, 2)
- If Len(arr(i, j)) Then
- m = m + 1
- brr(m, 1) = arr(1, j)
- brr(m, 2) = arr(i, 1)
- brr(m, 3) = arr(i, j)
- brr(m, 4) = arr(i + 1, j)
- End If
- Next
- End If
- Next
- [Y:AB].ClearContents
- '[O2].Resize(m, 4) = brr
- [Y2].Resize(UBound(brr), UBound(brr, 2)) = brr
- MsgBox "用时" & Format(Timer - TT, "0.00") & "秒"
- End Sub
复制代码 |