2015-04-01 213 views
0

当我试图引用工作簿范围命名范围时,我得到了对象'_Global'的方法范围失败错误。我用相同的代码引用了其他命名范围,并且它们都工作正常。只有这个特定的范围会引发错误。引用命名范围时,对象'_Global'的方法'范围'失败错误

为指定范围的功能是本

=OFFSET(INDIRECT(ADDRESS(91,MATCH(Calculation!$G$89,Calculation!$C$90:$S$90,0),,,"Calculation")),,-2,1,5)

我无法弄清楚什么是这个问题上,任何人都可以帮我吗?谢谢!

这是引发错误

Set rngVs = Range("'CAR Dashboard.xlsm'!PenLineSelected1Y") 
+0

我怀疑这个公式没有返回你期望它返回的结果。如果您将该偏移公式放入工作表中,则可能会返回错误。 – 2015-04-01 21:11:58

回答

0

你可以试试行:

Set rngVs = Names("PenLineSelected").RefersToRange 

如果还是失败,那么错误的一个可能的原因:

你有-2为您的偏移量功能中的cols参数。如果Address函数返回列A或B中的地址,则会引发#REF!错误。

我把公式的每一部分放在它自己的单元格中,只是为了看看它失败的地方。我们可以观察到C90的第三列匹配:S90不会导致错误:

enter image description here

但是,如果我改变搜索词“世界”(将在B列中找到),偏移功能将失败。

enter image description here

+0

'Set rngVs = Names(“PenLineSelected”)。RefersToRange' This works!非常感谢你的插图!只是好奇,这两种引用范围的方法有什么区别? – qshngv 2015-04-01 21:31:33

+0

oops,它工作在调试模式,但是当我试图运行该过程时,它返回一个应用程序定义或对象定义的错误... – qshngv 2015-04-01 21:39:33

+0

赋值'Set rngVs = Name(...'引发错误?或一些其他行会产生错误? – 2015-04-01 21:48:59

相关问题