其他 excel 工作表中的宏可见性

Macro visibility in other excel sheets

我在 excel 工作簿之一 (abc.xlsm) 中创建了宏。我只希望那个特定的工作簿在视图宏弹出窗口中显示宏。但是当从其他工作簿 (xyz.xlsx) 查看宏时,我能够查看我在 abc.xlsm 中创建的宏。 我在宏之前尝试使用 private 关键字。但它会隐藏所有工作簿中的宏可见性,包括第一个工作簿 (abc.xlsm) 有什么办法可以限制宏仅在创建它的工作簿中可见吗?

Excel 宏弹出窗口列出了在当前 Excel 实例中打开的所有工作簿中可执行的所有宏。这意味着仅从特定工作簿执行宏的唯一选项是检查 ActiveWorkbook 是否是您希望从中执行宏的工作簿。您可以在子代码之上使用这一行来完成此操作:

If Not ActiveWorkbook.Name = "abc.xlsm" Then Exit Sub