2015-04-01 144 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

相關問題