我在其中一个项目中遇到了困难。
在我在其中一列上应用过滤器后,如何从所有可见行中复制前25行。目前它正在复制所有可见范围。
With xlSheet
.AutoFilterMode = False
With xlApp.Worksheets("source").Range("A1:G1000")
.AutoFilter Field:=5, Criteria1:="x1"
.SpecialCells(xlCellTypeVisible).Copy
End With
End With
然后我将过滤器更改为x2,并希望为该过滤器复制前25行,依此类推。
提前致谢
答案 0 :(得分:0)
应用过滤器后,宏会将 Sheet1 中的前25行复制到 Sheet2(不包括标题行)
Sub dural()
Dim sh1 As Worksheet, sh2 As Worksheet
Dim i As Long, j As Long
Set sh1 = Sheets("Sheet1")
Set sh2 = Sheets("Sheet2")
i = 1
For j = 2 To Rows.Count
If sh1.Cells(j, 1).EntireRow.Hidden = False Then
sh1.Cells(j, 1).EntireRow.Copy sh2.Cells(i, 1)
i = i + 1
If i = 26 Then Exit Sub
End If
Next j
End Sub