在多个活动工作簿之间工作

macros1代码存储在工作簿1中。命令button1触发打开用户选定的工作簿。 我们称之为“工作簿2”(尽pipe实际的工作簿名称每次都不相同)。 macros1在工作簿2中运行代码(主要是格式化命令)。

macros1结束。 工作簿2保持打开。 用户在工作簿2上进行了一些手动干预后,用户单击工作簿1中的命令button2,触发macros2。

macros2开始通过再次激活工作簿2,运行代码。 有一点,代码说打开另一个用户select的工作簿。 我们称之为工作簿3(同样,文件名可以不同)。 然后,macros2具有代码,在操作手册2中执行操作。然后返回到工作簿3。

我遇到的问题是我无法弄清楚如何在给定工作簿名称/工作表名称更改的情况下使这些工作簿变暗。 另外,在不同的地方打开新的工作簿,我不确定哪些模块需要添加代码。

例如,您可以执行以下操作来隐藏书本和工作表:

首先你需要声明工作簿:

 Dim wbBook1 As Workbook Dim wbBook2 As Workbook 

然后你需要设置每个工作簿(注意,第二本书正在打开时设置:

 Set wbBook1 = ThisWorkbook Set wbBook2 = Workbooks.Open("C:\PERSONAL_FOLDER\test.xlsm") 

为了确定您正在使用哪些表单,您还需要声明和设置这些表单:

 Dim wsSheet1 As Worksheet Dim wsSheet2 As Worksheet Set wsSheet1 = wbBook1.Worksheets("Sheet1") Set wsSheet2 = wbBook2.Worksheets("Sheet1") 

使用wsSheet1和wsSheet2,您可以轻松运行在表单1中的当前工作簿和表单1中的工作簿testing中执行某些操作的macros。

完成工作簿testing后,可以使用以下命令closures它:

 wbBook2.close 

我希望这有帮助!