我將假設FirstYears
包含工作表的名稱(作爲文本),並且您想分析該工作表的各個行,並將結果包含在第二個工作表中。
在第二工作表中的公式中使用的片段INDIRECT(FirstYears&!"$E6:$AZ6")
一種替代方法是
OFFSET(INDIRECT(FirstYears&"!E6:AZ6"),ROW(cell)-n,0)
其中cell
是第一結果的小區在第二工作表中的相對地址和n
是常數等於ROW(cell)
的價格。
因此,如果第一結果的小區是小區A2
式片段在細胞A2
使用是
OFFSET(INDIRECT(FirstYears&"!E6:AZ6"),ROW(A2)-2,0)
當含有此片段的公式被複制下來的結果列它將遞送引用E6:AZ6
, E7:AZ7
,EZ:AZ8
等與目標工作進入連續結果細胞(即A2
,A3
,A4
等),根據您的需要。
它是如何工作的?
OFFSET(r,i,j)
提供與範圍r相同形狀的範圍,但它在工作表中通過i行(如果i是正數,則向下,如果i是負數,則向下)和j列(如果j是正數,則向右移動並且如果j是負數則離開)。 0是i和j的有效值。
在建議的公式中,通過使用INDIRECT
函數,r始終設置在目標工作表中的範圍E6:AZ6
,我連續取值爲結果列中的0,1,2,...,j爲始終設置爲零。 i取數值0,1,2等因爲在細胞A2
摘錄ROW(A2)-2
變得ROW(A3)-2
,ROW(A4)-2
等時複製下來的結果列。
注意,不同於功能如SUM()
,存在與細胞A2
使用一個代碼段,例如ROW(A2)
沒有問題 - 它不產生循環引用警告和結果爲零,而不是其產生的2正確的值。
來源
2017-07-30 18:27:42
DMM
'FirstYears'和'Weeks'命名範圍?你的問題只是把'INDEECT(FirstYears&「!$ E6:$ AZ6)'按照你的意願行事'?你是否嘗試過使用'ROW()'函數和'OFFSET()'函數? – DMM
感謝您的回覆。我有同樣的問題,沒有命名的範圍。你在哪裏將行函數在公式中?這可能是我所需要的,我只是無法解決如何寫入它 –