首页 > 解决方案 > 避免在可见范围内复制粘贴

问题描述

我想通过简单地引用其他范围来避免在我的代码中复制粘贴。

   VisibleRowsCount = Application.WorksheetFunction.Subtotal(3, Range(FromTable & "[" & FlagColumn & "]"))

   Dim DestinationRange As Range, SourceRange As Range

   Set DestinationRange = Sheets("Sht1").ListObjects(ToTable).ListColumns(ColumnSplit(0)).Range
   Set SourceRange = Sheets("Sht2").ListObjects(FromTable).ListColumns(ColumnSplit(1)).DataBodyRange.SpecialCells(xlCellTypeVisible)

   DestinationRange.Cells(lastCell, 1).Resize(SourceRange.Count, 1).Value = SourceRange

我得到了正确数量的新行,但所有值都只等于可见范围的第一行。

如果知道很重要,我使用 ListObjects 列作为目标和源范围。

标签: excelvba

解决方案


推荐阅读