将多个工作表复制到另一个工作簿
Copy multiple sheets to another workbook
我有一些代码会复制 sheet 然后创建一个新的工作簿,然后粘贴它并调整 sheet 名称和工作簿名称,然后再将其保存到桌面。
所有被调用的 subs 所做的是将数据范围从条目 sheet 转置到导出 sheet,这是被复制(命名为“行”)以粘贴到新的工作簿。
代码用作按钮,目前还不需要声明。
Sub UploadSheet()
Call TransposeHS
Call TransposeOrigin
Call TransposeValues
Application.ScreenUpdating = False
Path = CreateObject("WScript.Shell").specialfolders("Desktop")
Worksheets("Rows").Cells.Copy
Workbooks.Add (xlWBATWorksheet)
ActiveWorkbook.ActiveSheet.Paste
ActiveWorkbook.ActiveSheet.Name = "Rows"
ActiveWorkbook.SaveAs Filename:=Path & "\" & "Upload" & ".xlsx"
ActiveWorkbook.Close SaveChanges:=True
Application.ScreenUpdating = True
MsgBox "Exported to Desktop"
End Sub
如何调整代码以复制超过 2 sheet 而不是只复制一个到新工作簿?
使用 Workbooks.Add
创建新工作簿然后粘贴过于复杂。
在作品sheet(s)上调用Copy
而不指定任何参数;使用复制的 sheet(s) 创建了一个新工作簿,并且是 ActiveWorkbook
.
Worksheets(Array("Rows", "SecondSheet")).Copy
ActiveWorkbook.SaveAs Filename:=Path & "\" & "Upload" & ".xlsx"
我有一些代码会复制 sheet 然后创建一个新的工作簿,然后粘贴它并调整 sheet 名称和工作簿名称,然后再将其保存到桌面。
所有被调用的 subs 所做的是将数据范围从条目 sheet 转置到导出 sheet,这是被复制(命名为“行”)以粘贴到新的工作簿。
代码用作按钮,目前还不需要声明。
Sub UploadSheet()
Call TransposeHS
Call TransposeOrigin
Call TransposeValues
Application.ScreenUpdating = False
Path = CreateObject("WScript.Shell").specialfolders("Desktop")
Worksheets("Rows").Cells.Copy
Workbooks.Add (xlWBATWorksheet)
ActiveWorkbook.ActiveSheet.Paste
ActiveWorkbook.ActiveSheet.Name = "Rows"
ActiveWorkbook.SaveAs Filename:=Path & "\" & "Upload" & ".xlsx"
ActiveWorkbook.Close SaveChanges:=True
Application.ScreenUpdating = True
MsgBox "Exported to Desktop"
End Sub
如何调整代码以复制超过 2 sheet 而不是只复制一个到新工作簿?
使用 Workbooks.Add
创建新工作簿然后粘贴过于复杂。
在作品sheet(s)上调用Copy
而不指定任何参数;使用复制的 sheet(s) 创建了一个新工作簿,并且是 ActiveWorkbook
.
Worksheets(Array("Rows", "SecondSheet")).Copy
ActiveWorkbook.SaveAs Filename:=Path & "\" & "Upload" & ".xlsx"