无论工作表名称如何,都可以复制工作表的宏?

Macro to copy worksheet irrespective of worksheet name?

我将大量信息导出到 .csv 文件,然后 download/open 进行操作。每个导出都按顺序编号(例如导出 (22).csv、导出 (23).csv 等,因此工作 sheet 也被赋予相同的 name/number.

对于我打开的每个 .csv 文件,我想要一个宏来进行快速过滤、计数和复制,以便我可以在操作之前保留一个完整的作品sheet并处理第二个作品sheet。在我的宏中,我有:

Sub Export()
'
' Export Macro
'

'
    Range("A1").Select
    Selection.AutoFilter
    Rows("2:2").Select
    ActiveWindow.FreezePanes = True
    Range("A1").Select
    Selection.End(xlDown).Select
    Range("A6").Select
    ActiveCell.FormulaR1C1 = "=SUBTOTAL(3,R[-4]C:R[-1]C)"
    Range("A7").Select
    Selection.End(xlUp).Select
    Selection.End(xlUp).Select
    Range("A2").Select
    Sheets("export (87).csv").Select
    Sheets("export (87).csv").Copy After:=Sheets(1)
    Range("A1").Select
End Sub

对于 export (87).csv 这一切都可以正常工作,但对于下一个文件 export (88).csv 则失败。

如何使宏 select 成为第一个 sheet 并复制到最后而不考虑 sheet 名称?

我试过使用:

Sheets("Sheet1").Select
Sheets("Sheet1").Copy After:=Sheets(1)

Sheets("Sheets1").Select
Sheets("Sheets1").Copy After:=Sheets(1)

我收到 RT 错误 9 和

Sheets(Sheet1).Select
Sheets(Sheet1).Copy After:=Sheets(1)

我收到 RT 错误 13

提前致谢...

这部分导致了错误

Sheets(Sheet1).Select
Sheets(Sheet1).Copy After:=Sheets(1)

正确的语法是:

Activeworkbook.Worksheets(1).Activate
ActiveSheet.Copy After:=ActiveSheet

编辑:更改代码,使其不使用 sheet

的名称