VBA宏复制和粘贴工作表到新工作簿中

3

我每天都要做一份报告,其中需要将几张表格复制并粘贴到一个名为“报告(今天日期)”的新工作簿中。

我的报告有4个表格:客户、订单、国家、ID。

客户和国家是从主文件中简单地复制和粘贴,但订单和ID是来自主文件中一个表格的筛选数据。订单被筛选为“已完成”,而ID则是除了ID 200和500之外的所有内容。

我尝试基于此处找到的解决方案构建宏:http://www.hivmr.com/db/ack717pc8f88jpdsf7838pcaspkcsdmd

复制和粘贴可以正常工作,但我无法复制和粘贴多个表格/重命名表格和筛选数据。

编辑:

Sub CopyInNewWB()
    'has been tested 
    Dim newWS, WS As Worksheet 
    Application.ScreenUpdating = False 
    Set WS = ThisWorkbook.Sheets("Sheet1") 
    Set newWS = Workbooks.Add.Sheets("Sheet1") 
    WS.Cells.Copy 
    newWS.Cells.PasteSpecial xlValues Application.CutCopyMode = False 
    Application.ScreenUpdating = True 
End Sub

你能展示一下你正在使用的代码吗? - Slaqr
抱歉,我以为我已经发布了它。 - GrandeurH
子程序 CopyInNewWB() '已经测试过 Dim newWS, WS As Worksheet Application.ScreenUpdating = False Set WS = ThisWorkbook.Sheets("Sheet1") Set newWS = Workbooks.Add.Sheets("Sheet1") WS.Cells.Copy newWS.Cells.PasteSpecial xlValues Application.CutCopyMode = False Application.ScreenUpdating = True End Sub - GrandeurH
最好编辑您的问题并包含该代码,而不是将其作为评论发布。评论中的格式有限,正如您所看到的,所有内容都会混在一起。 - Rdster
1个回答

3

我不清楚你的筛选表是如何设置的,但是这种方法可以将主表中筛选后的表格完全复制到一个新的工作簿中:

Sub CopyInNewWB()
Dim wbO As Workbook, wbN As Workbook

On Error GoTo ErrHandler

Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Application.DisplayAlerts = False

Set wbO = ActiveWorkbook
Set wbN = Workbooks.Add

wbO.Sheets("Customers").Copy wbN.Sheets(1)
wbO.Sheets("Orders").Copy wbN.Sheets(2)
wbO.Sheets("Country").Copy wbN.Sheets(3)
wbO.Sheets("ID").Copy wbN.Sheets(4)

wbN.Sheets("Sheet1").Delete
wbN.Sheets("Customers").Activate

Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
Application.DisplayAlerts = True

ErrHandler:
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
Application.DisplayAlerts = True

End Sub

你好,非常感谢您的帮助,它完美地运行了。不过,有没有办法告诉宏来筛选数据?我的数据设置在表格中,因此筛选器只是基本筛选器。每天我都会将订单表格筛选为已完成(我有一个标题用于筛选),然后将其复制并粘贴到新表格中,接着取消筛选并筛选ID列,除了200和500之外的所有内容。如果有任何方法可以做到这一点,那将不胜感激,并感谢您的帮助! - GrandeurH
我需要查看一些样本数据,并知道从主表中筛选/复制到报告的哪些工作表。 - barvobot

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接