我在构建Excel电子表格的VB6应用程序中有以下代码:
wrksh.Range("F4:F" & rn).Select
With Selection
.AdvancedFilter Action:=xlFilterCopy, CopyToRange:=ActiveSheet.Range("J5"), Unique:=True
End With
第一次通过,效果很好。如果我删除电子表格,再次运行它而不关闭程序,我得到错误'91',“对象变量或没有设置块变量”。
任何想法,以及我如何解决它?
答案 0 :(得分:2)
假设您的wrksh
完全符合工作簿中的有效工作表(定义为Worksheet
)。 rn
是一个数字值,代表Range
的最后一行(定义为Long
)。最后,ActiveSheet
与wrksh
表格相同,那么下面的代码应该适合您:
With wrksh.Range("F4:F" & rn)
.AdvancedFilter Action:=xlFilterCopy, CopyToRange:=wrksh.Range("J5"), Unique:=True
End With