我有以下公式,它已經很長時間返回#REF!
錯誤,無論我如何重新設計它。 C1上的值是具有對所引用的單元中的數據標籤的名稱:INDIRECT函數錯誤
Aug 2012
式的這一部分返回正確的數值:
=INDIRECT("'" & C1 & "'" & "!A502'")
但這個公式給出了錯誤:
=SUM(INDIRECT("'" & C1 & "'" & "!A502:'" & C1 & "'" & "!A503"))
對我在哪裏犯錯誤的任何幫助嗎?
我有以下公式,它已經很長時間返回#REF!
錯誤,無論我如何重新設計它。 C1上的值是具有對所引用的單元中的數據標籤的名稱:INDIRECT函數錯誤
Aug 2012
式的這一部分返回正確的數值:
=INDIRECT("'" & C1 & "'" & "!A502'")
但這個公式給出了錯誤:
=SUM(INDIRECT("'" & C1 & "'" & "!A502:'" & C1 & "'" & "!A503"))
對我在哪裏犯錯誤的任何幫助嗎?
你有正確的公式將有:
=SUM(INDIRECT("'"&C1&"'!A502:A503"))
我測試了這一點,並證實了它的工作原理,當C1說「表2」,我有一個名爲「表2」的另一頁。
兩件事情我已經改變了:
首先 - 你引用它,這樣它會重複表名稱爲範圍(A502)中列出的第一個單元格,以及爲第二單元(A503)。但是,如果您在Excel公式中手動選擇A502:A503,則可以看到其格式爲:'Sheet Name'!A502:A503。
我也簡化了公式,所以「'」與「!」在同一個字符串中。然而,如果沒有這種改變,它就會奏效。
動態創建像這樣的公式(使用INDIRECT或VBA)的關鍵是確保您實際返回到Excel並嘗試手動輸入它--Excel將其視爲可接受的公式?另外 - 如果您想查看公式爲什麼不起作用,請轉至公式功能區,然後單擊「評估公式」。這可以讓你逐步瀏覽公式,因爲它簡化了。如果你這樣做,它會告訴你最終的參考是由你的公式創建的,你可以將它與你自己手動創建的版本進行比較。
這很完美!謝謝你的回答和冗長的解釋!欣賞你的時間。 – Dingo