簡體   English   中英

與工作表名稱無關的要復制工作表的宏?

[英]Macro to copy worksheet irrespective of worksheet name?

我將大量信息導出到.csv文件,然后下載/打開進行操作。 每個導出都按順序編號(例如,export(22).csv,export(23).csv等),因此工作表也被賦予相同的名稱/編號。

對於我打開的每個.csv文件,我希望宏進行快速篩選,計數和復制,以便在操作之前可以保留一個完整的工作表並處理第二個工作表。 在我的宏中,我有:

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則失敗。

不論工作表名稱如何,如何使宏選擇第一張工作表並復制到末尾?

我試過使用:

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

編輯:更改代碼,以便它不使用工作表的名稱

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM