VBA 将数据复制到具有上一张表定义的表名的新表

问题描述 投票:0回答:0

我有一个宏,它从一个文件复制超过 3 张纸到新文件(基本上创建新的 Excel 文件,从原始文件复制 3 张纸)。作为此过程的一部分,它会丢失出现在原始文件中的已定义表名。我怎样才能确定表名也被复制了? 这是我使用的代码:

Dim wscurrent as Worksheet
Dim master as Workbook
Dim new as Workbook
Dim a As Integer
Dim pass As String
pass = ""

Application.ScreenUpdating = False

Set master = This Workbook
Set new = Workbook.Add
a = 1

master.Activate
For Each wscurrent In master.Worksheets
If Left(wscurrent.Name, 1) ="." Then
Else
wscurrent.Activate
wscurrent.Copy AFter:=new.Sheets(a)
master.Activate
wscurrent.Cells.Select
Selection.Copy
wscurrent("A1).Select

new.Sheets(wscurrent.Name).Activate
ActiveSheet.Range("A1").PasteSpecial xlPasteValuesAndNumberFormats
ActiveSheet.Columns("AB:AP").ColumnWidth = 0.1
ActiveSHeet.Range("A1").Select
ActiveWindow.ScrollRow = 1
ActriveWindow.ScrollColumn = 1
ActiveSheet.Protect Password:=pass, AllowFormattingRows:=True, AllowFormattingCells:=True
a = a + 1
End If
End mymacro
excel vba copy paste
© www.soinside.com 2019 - 2024. All rights reserved.