在Excel中查找并激活命名范围,而不必知道工作表名称

我正在写一个将更新一堆工作簿的macros。

假设工作簿已经打开。

我需要激活(或select一个)名称(命名为范围)的单元格,但踢球者是我不知道它在哪个工作表。

换句话说:我保证:

  • 指定的范围存在。
  • 已命名的范围对于打开的工作簿是全局唯一的。

我不能保证:

  • 指定的范围将在同一个工作表索引中。
  • 工作表将在工作簿之间命名相同。

任何意见,将不胜感激,即使是一个告诉我如何从全局命名范围回到工作表,因为这将足以让我然后激活工作表,并从那里去。 但理想情况下,解决scheme将告诉我如何激活/select/更新(最终的结果是我更新单元格,或插入下面的行,如果有帮助)命名的范围单元格而不知道工作表名称。

我在Excel 2007中这样做

谢谢!

假设你已经命名范围"test"

方式1:

 Dim rng As Range Set rng = Range("test") 'or if you have more than one workbook opened 'Set rng = ThisWorkbook.Names("test").RefersToRange 'select sheet rng.Parent.Select 'select named range rng.Select 

方式2:

 'for currently active workbook Application.Goto "test"