VBA将EXCEL筛选后内容复制到新工作表

2024-12-12 06:11:54
推荐回答(3个)
回答1:

【1】xlS.[a1] 改为 xlS.Range("A1")
【2】
Activesheet,这时是你 新建的 Sheet,不是你有数据的Sheet,
可以先激活你有数据的Sheet,
如:Workbooks("你有数据的工作表名").Worksheets(1).Active 然后再Copy

或者在新建一个Workbook之前,如果 有数据的Workbooks中的SHeet是当前激活的 SHeet,则可以先将它赋值给变量。 dim AS =New Worksheet
set AS=Activesheet
然后再建立新的工作表,Copy时用:
AS.Range("A2:F20").SpecialCells(xlCellTypeVisible).Copy xlS.Range("A1")

回答2:

是不是第4行"WORKSHEETS"要改为"sheets“

回答3:

建议你录个宏看看就知道了