當然原因有三…
一、這個函數其實非常有用,但多數人並不清楚。沒有它,一樣可以用最原始方式使用,但有了它真的是事半功不知幾倍。
二、前二週給一個學生上課,其實從頭到尾就在講這個函數←可見真的能應用到
三、剛剛有人在我舊部落格留言→可見真的有人在查詢
哈哈!廢話不說了…再讓我上堂偷懶的舊課吧!
今兒個某位學員在製作記帳總表…因為要把每月結餘金額連結帶到總表…
必需一個個寫入「='1月'!BN6」、「='2月'!BN6」…一路寫到12月…再改第二列
依他的總表,至少需對應400個以上的欄位…這的確是件辛苦的事情~
老師佛心來的~當然,交情不同咩~一句"傳來"~
只要利用INDIRECT這個函數…可以簡單的讓欄位名稱(例:'1月'!BN6),成為一個字串帶入…
大家知道,"字串"這個東東,代表你可以隨心所欲的用規則去產生…
所以你可以產生欄位位置的字串…再例用這個函數去取得該欄位的"值"
作法及原理:
INDIRECT(欄位位置字串 , (真)位置判為A1的格式 / (假)位置判為R1C1的格式)A1的格式:就是我們常見欄位位置的表示方式,例如A1、B1
R1C1的格式:以「列數+欄數」為表示方式,例如R2C3代表第二列第3欄…就是指C2囉~
《1》總表 C2裡函數要對應的位置是「'1月'!BN6」…月份我們可以例用C1的值來產生…其它的部份就直接加上雙引號,讓它變成字串即可
="'"&C$1&"月'!BN6"
《2》將欄位位置產生字串的計算式帶入函數裡…就完成了「一月份當月總計[薪資]」的對應囉
=INDIRECT("'"&C$1&"月'!BN6",TRUE)
直接將一月份薪資總計的計算式(C2)…複製到其它月份(D2:N2)…就完成囉!
其它列的對應,比照此模式~
就可以有效的把400次,減為30次囉~~