|
参与一下
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" Then
arr = Me.[b3].CurrentRegion
ReDim brr(1 To 1)
For i = UBound(arr) To 1 Step -1
If arr(i, 1) = 0 Then
m = m + 1
ReDim Preserve brr(1 To m)
brr(m) = arr(i, 1)
Else
If arr(i + 1, 1) = 0 And i < UBound(arr) Then m = m + 1: ReDim Preserve brr(1 To m): brr(m) = arr(i, 1)
End If
If i = 2 Then If arr(i - 1, 1) = 0 And arr(i, 1) <> 0 Then Exit For
Next
ReDim crr(1 To UBound(brr), 1 To 1)
For i = UBound(brr) To 1 Step -1
n = n + 1
crr(n, 1) = brr(i)
Next
Me.Range("d3:d33").ClearContents
Me.Cells(33 - UBound(crr) + 1, 4).Resize(UBound(crr)) = crr
End If
End Sub
|
|