|
楼主 |
发表于 2024-3-29 11:40
|
显示全部楼层
Sub 区域复制()
Dim minrow%, maxrow%, i%, 计数%, 次数%, qianmian As Range, houmian As Range
计数 = WorksheetFunction.CountA([h:h])
For i = 1 To 计数
Set qianmian = Range("b:b").Find(Cells(i, 8), [b1048576]) '找到第一个符合的目标
Set houmian = Range("b:b").Find(Cells(i, 8), , , , , 2) '倒序找到最后一个符合的目标
minrow = qianmian.Row '最小行数
maxrow = houmian.Row '最大行数
If 次数 = 0 Then
Cells(minrow, 1).Resize(maxrow - minrow + 1, 5).Copy _
Cells(Cells(Rows.Count, 10).End(xlUp).Row, 10) '先将找到的数据扩展到整个区域,再复制到指定的地方
Else
Cells(minrow, 1).Resize(maxrow - minrow + 1, 5).Copy _
Cells(Cells(Rows.Count, 10).End(xlUp).Row + 1, 10) '上次复制后的单元格向下移一位做为新的复制地址
End If
次数 = 次数 + 1
Next i
End Sub |
|