gpt4 book ai didi

vba - 在多个事件工作簿之间工作

转载 作者:行者123 更新时间:2023-12-04 21:34:44 25 4
gpt4 key购买 nike

宏 1 代码存储在工作簿 1 中。命令按钮 1 触发打开用户选择的工作簿。我们称它为 Workbook 2(尽管实际的 Workbook 名称每次都不同)。宏 1 在工作簿 2 中运行代码(主要是格式化命令)。

宏 1 结束。工作簿 2 保持打开状态。在用户对工作簿 2 进行一些手动干预后,用户单击工作簿 1 中的命令按钮 2,这会触发宏 2。

宏 2 从再次激活工作簿 2 开始,运行代码。有一次,代码说打开另一个用户选择的工作簿。我们称它为 Workbook 3(同样,文件名可以不同)。然后宏 2 具有在工作簿 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 中的工作簿测试中执行某些操作的宏。

使用工作簿测试完成后,您可以使用以下命令将其关闭:
wbBook2.close 

我希望这有帮助!

关于vba - 在多个事件工作簿之间工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41730885/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com