材料/工具
Excel;indirect函數(shù)
方法
第一種作用:創(chuàng)建固定的數(shù)值組
在一些公式中,需要一組數(shù)值,比如圖示中,我們想求列B中最大的3個(gè)數(shù)值的平均值。在公式中,可以輸入數(shù)值,如單元格D4中所示:
=AVERAGE(LARGE(B1:B8,{1,2,3}))
如果需要更多的一組數(shù)值,那么可能不想輸入這些數(shù)值。此時(shí),可以使用ROW函數(shù),如在單元格D5中使用的數(shù)組公式:
=AVERAGE(LARGE(B1:B8,ROW(1:3)))
還可以將ROW函數(shù)和INDIRECT函數(shù)聯(lián)合使用,也是數(shù)組公式:
=AVERAGE(LARGE(B1:B8,ROW(INDIRECT(“1:3″))))
上述3個(gè)公式的結(jié)果相同。
然而,如果在工作表的頂部插入行,第二個(gè)公式返回不正確的結(jié)果,因?yàn)樾袛?shù)被調(diào)整了。現(xiàn)在,顯示了第3、第4、第5個(gè)最大數(shù)值的平均值,而不是求最大的3個(gè)數(shù)值的平均值。
使用INDIRECT函數(shù),第3個(gè)公式保持正確的行引用,并繼續(xù)顯示正確的結(jié)果。
第二種作用:從工作表、行、列信息創(chuàng)建引用
在INDIRECT函數(shù)中使用FALSE作為第二個(gè)參數(shù)容易創(chuàng)建基于行號(hào)和列號(hào)的引用。在本例中,創(chuàng)建R1C1樣式的引用,還包括了工作表名 — ‘MyLinks’!R2C2。
=INDIRECT(“’” & B3 & “’!R” & C3 & “C” & D3,FALSE)
第三種作用:創(chuàng)建對(duì)靜態(tài)命名區(qū)域的引用
INDIRECT函數(shù)也可以創(chuàng)建對(duì)命名區(qū)域的引用。在本例中,藍(lán)色單元格區(qū)域被命名為NumList,在列B中也有一個(gè)基于該列的數(shù)值數(shù)的動(dòng)態(tài)區(qū)域。
通過(guò)在SUM函數(shù)中使用區(qū)域名稱(chēng),每個(gè)單元格都能夠計(jì)算總和,正如在單元格E3和E4中所看到的。
=SUM(NumList) 或 =SUM(NumListDyn)
代替在SUM公式中輸入名稱(chēng),可以指向工作表單元格區(qū)域名稱(chēng)。例如,使用在單元格D7中顯示的名稱(chēng)NumList,單元格E7中的公式是:
=SUM(INDIRECT(D7))
不巧的是,INDIRECT函數(shù)不能夠解決對(duì)動(dòng)態(tài)區(qū)域的引用,因此當(dāng)公式向下復(fù)制到單元格E8中時(shí),結(jié)果顯示#REF!錯(cuò)誤。
第四種作用:創(chuàng)建開(kāi)始部分固定的引用
在第一個(gè)示例中,列C和列E有相同的數(shù)字,使用SUM函數(shù)求得的和也是相同的。然而,所使用的公式稍微有點(diǎn)不同。在單元格C8中,公式為:
=SUM(C2:C7)
在單元格E8中,INDIRECT函數(shù)創(chuàng)建對(duì)開(kāi)始單元格E2的引用:
=SUM(INDIRECT(“E2″):E7)
如果在列表的頂部插入一行,例如輸入January的數(shù)量,列C中的和不會(huì)改變,但公式發(fā)生了變化,根據(jù)被插入的行進(jìn)行了調(diào)整:
=SUM(C3:C8)
然而,INDIRECT函數(shù)鎖定開(kāi)始單元格為E2,因此January的數(shù)量被自動(dòng)包括在E列的匯總單元格中。結(jié)束單元格改變,但是開(kāi)始單元格沒(méi)有受影響。
=SUM(INDIRECT(“E2″):E8)
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com