可以告诉我为什么这段代码也在复制无可见数据。
Sub Copy ()
Range(ActiveCell,ActiveCell.Offset(LIRS_Required,7)).SpecialCells(xlCellTypeVisible, xlTextValues).Copy
End Sub
我只希望在表格过滤后显示可见数据。
此致
答案 0 :(得分:1)
因为.offset()不会跳过隐藏的单元格。
尝试此解决方法:
Sub Copy()
Dim rng As Range
Set rng = ActiveCell.Resize(LIRS_Required + 1)
While rng.SpecialCells(xlCellTypeVisible).Count < LIRS_Required + 1
Set rng = rng.Resize(rng.Count + LIRS_Required + 1 - rng.SpecialCells(xlCellTypeVisible).Count)
Wend
rng.Resize(, 7 + 1).SpecialCells(xlCellTypeVisible).Copy
End Sub