如何默认从此工作簿而不是所有打开的工作簿运行宏?

如何默认从此工作簿而不是所有打开的工作簿运行宏?

我们有一个启用宏的工作簿(版本 2010),许多人都在使用。其中一些人的 Personal.xlsb 工作簿中有宏。我们遇到过这种情况,共享工作簿中的宏与个人工作簿中的宏名称相同,但功能略有不同。

为了避免运行错误的宏,我想将共享工作簿默认为从此工作簿而不是所有打开的工作簿运行宏。我希望在其中放置一些内容WorkBook_Open(),但是什么呢?

有没有办法将宏的默认选项更改为All Open WorkbooksThis Workbook

答案1

你们能不能重命名共享工作簿中的宏并替换该特定工作簿中的该宏的实例?

答案2

如果我重命名包含子程序的模块,我就可以准确指定要调用哪个子程序。

示例:
在 Modlue1 中,重命名为 LocalModule1,我有:

Sub TestDupe()
    Call LocalModule1.DuplicateName
End Sub

Public Sub DuplicateName()
    ActiveSheet.UsedRange
    MsgBox ("new mod 1")
End Sub

在 Module2(重命名为 LocalModule2)中,我有

Public Sub DuplicateName()
      ActiveSheet.UsedRange
      MsgBox ("mod 2")
End Sub

通过将调用中的限定符从 更改LocalModule1LocalModule2,我现在可以指示执行哪个同名子例程。

相关内容