获取承载当前正在运行的VBA代码的工作簿的名称?

我还会注意到, Application.Run("<workbook name>!<public VBA function name>")允许执行跳转到其他工作簿而不更改ActiveWorkbook属性。

我想知道承载当前正在执行的VBA代码的工作簿的名称。

如果有人了解我错了:

  • 简单的ActiveWorkbook不会这样做,因为活动工作簿可能与正在运行的VBAmacros所在的工作簿完全不同。
  • Me对象也不是票。 它包含对当前正在执行的方法的引用,而不考虑托pipe对象(只有当我的VBA代码位于Worksheet或Workbook类的方法中时,它才起作用)。

我想知道承载当前正在执行的VBA代码的工作簿的名称。

 Debug.Print ThisWorkbook.Name