【发布时间】:2019-10-21 11:30:35
【问题描述】:
尝试复制过滤后的表格并将结果粘贴到另一个表格的底部。
With RollupWeekSheet
sh1Col = .Range("Table1").Cells(1).Column
LastRollupWeekRow = .Cells(.Rows.Count, sh1Col).End(xlUp).Row
End With
Dim ComboWeekTable As ListObject
Set ComboWeekTable = ComboWeekSheet.ListObjects("Table1")
Dim RollupTimeStamp As Date
RollupTimeStamp = RollupWeekSheet.Range("B3").Value
With ComboWeekTable
.Range.AutoFilter Field:=16, Criteria1:=">" & RollupTimeStamp
.DataBodyRange.Copy
End With
With RollupWeekSheet
.Cells(LastRollupWeekRow + 1, sh1Col).PasteSpecial xlPasteValues
ComboWeekTable.Range.AutoFilter Field:=1
Application.CutCopyMode = False
Application.ScreenUpdating = True
End With`
With ComboWeekSheet
If .AutoFilterMode Then
.AutoFilterMode = False
End If
End With
它一直突出显示位于我的“With ComboWeekTable”行下的“.Autofilter”并说“无效使用属性”,但我不知道为什么。请帮忙。
【问题讨论】:
-
尝试用你想要的动作录制宏,看看是否可能。然后生成VBA代码
-
试试
With ComboWeekTable.Range -
我改为 ComboWeekTable.Range。它现在突出显示其下方的整行(“.Autofilter.Rang.Copy”)并显示“未设置块变量的对象变量”。我不知道那是什么意思。
-
此时是否有任何可见的行?
标签: excel vba copy autofilter listobject