我有一张表,我在上面创建了一个带有过滤器集的列表。当我从该列表中选择一些值时,某些值会显示(可见),而其余的则被隐藏。我只想将该工作表中的所有可见数据(包括所有可见行)复制到另一个工作簿。我使用了一些代码,但它只选择工作表的第一个单元格,我需要将所有可见行复制到另一个工作簿。
Range("A1").Select
Do
ActiveCell.offset(1,0).Select
Loop While ActiveCell.EntireRow.Hidden = True
试试这个
'~~> Remove any filters
ActiveSheet.AutoFilterMode = False
'~~> Filter, offset(to exclude headers)
With rRange
.AutoFilter Field:=lCol, Criteria1:=strCriteria
.Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow.Copy
'
'~~> Do whatever you want to do witht he copied rows
'
End With
'~~> Remove any filters
ActiveSheet.AutoFilterMode = False
rRange
自动过滤器范围在哪里lCol
相关列在哪里。strCriteria
自动筛选条件在哪里