VBA Excel - 使用旧工作簿中的宏生成新工作簿

时间:2017-08-04 09:09:01

标签: excel vba excel-vba

我目前有一个工作簿,其中包含2张工作表中的大量数据,我用它来构建图表。这是它的样子:

enter image description here

所以,在CRC中,我有一堆宏,当按下MPNT上的按钮时,它会从Generator和MPNT中获取数据并在CRC中构建图表。

我的问题

出于某种原因,当我使用下面的函数将CRC表格复制到新的工作表中,然后我使用工作表上的一个按钮来隐藏/取消隐藏图表上的数据列时,它会打开原始文件并使用其中的宏来运行这些按钮?

    '''Extract Worksheet Button Function

Dim OriginalWB As Workbook, NewCRCWB As Workbook

Set OriginalWB = ThisWorkbook
Set NewCRCWB = Workbooks.Add

OriginalWB.Sheets("Generator").Copy Before:=NewCRCWB.Sheets("Sheet1")
OriginalWB.Sheets("Module Part Number Tracker").Copy Before:=NewCRCWB.Sheets("Generator")
OriginalWB.Sheets("CRC").Copy Before:=NewCRCWB.Sheets("Module Part Number Tracker")

Application.DisplayAlerts = False
NewCRCWB.Worksheets("Generator").Visible = False
NewCRCWB.Worksheets("Module Part Number Tracker").Visible = False
NewCRCWB.Worksheets("Sheet1").Delete

NewCRCWB.Activate
Application.DisplayAlerts = True

End Sub

我的目标

为了解决这个问题,我需要开发一个能够创建新工作簿的函数,并将所有代数直接转换到该工作簿并将宏传输到那里,但是我不知道如何做到这一点

我的问题

我如何:

  1. 打开新工作簿
  2. 在CRC中运行当前的宏 新工作簿上的CRC表上的工作簿
  3. 在此过程中确保将所有宏复制到CRC 新工作簿中的工作表
  4. 谢谢!

0 个答案:

没有答案