|
1、求助函数 SUM(INDIRECT("'"&D$2&"'!"&D$5&":"&D$5&""))) 这个是什么意思?
2、这个函数怎么理解=IF(ISERROR(SUM(INDIRECT("'"&D$2&"'!"&D$5&":"&D$5&""))),"",SUM(INDIRECT("'"&D$2&"'!"&D$5&":"&D$5&"")))
3、这个函数=IF(ISERROR(SUMIF(INDIRECT("'"&D$2&"'!"&D$4&":"&D$4&""),$A9,INDIRECT("'"&D$2&"'!"&D$5&":"&D$5&""))),"",SUMIF(INDIRECT("'"&D$2&"'!"&D$4&":"&D$4&""),$A9,INDIRECT("'"&D$2&"'!"&D$5&":"&D$5&"")))
1、求助函数 SUM(INDIRECT("'"&D$2&"'!"&D$5&":"&D$5&""))) 这个是什么意思?
SUM()括號中的是求和區域,INDERCT是獲得一個區域,前面的D$2是工作表的名稱,d5:D5是求和區域,也就是對工作表名稱和D2一致的那個工作表中的D5到D5進行求和,
2、这个函数怎么理解=IF(ISERROR(SUM(INDIRECT("'"&D$2&"'!"&D$5&":"&D$5&""))),"",SUM(INDIRECT("'"&D$2&"'!"&D$5&":"&D$5&"")))
ISERROR是檢測錯誤值,也就是說,如果SUM(INDIRECT("'"&D$2&"'!"&D$5&":"&D$5&"")是錯誤值的話,那麼就返回空值,如果能得到正確結果就將SUM(INDIRECT("'"&D$2&"'!"&D$5&":"&D$5&"")再執行一次,得到需要的結果。
3、这个函数=IF(ISERROR(SUMIF(INDIRECT("'"&D$2&"'!"&D$4&":"&D$4&""),$A9,INDIRECT("'"&D$2&"'!"&D$5&":"&D$5&""))),"",SUMIF(INDIRECT("'"&D$2&"'!"&D$4&":"&D$4&""),$A9,INDIRECT("'"&D$2&"'!"&D$5&":"&D$5&"")))
SUMIF是對於滿足條件的進行求和,也就是將工作名名字和D2內字符一致的那個工作表中D4:D4,如果這個區域內它的值和A9的值是一樣的,那麼就對D5進行求和,如果得到的是一個錯誤值就返回空值,不然就顯示這個值。這樣說應該沒問題吧,不過不明白的話,為什麼d4:D4,D5:D5,直接用D5,D4就可以了嘛,在我看來是把簡單的事弄復雜了。
|
|