excel函數參數怎么運算?下圖1展示了一個使用LEN函數計算單元格中字符數的公式。LEN函數接受單個項目作為其參數text,輸出單個項目作為其返回值。
圖1
對于接受單個項目的函數參數來說,有一條規則:如果對接受單個項目的函數參數使用單個項目,那么該函數將提供單個項目作為其返回值。
然而,如果在LEN函數中給其參數text提供多個項目作為其值,會發生什么呢?
下圖2的列A中有一系列姓名值,需要統計該列的字符總數。我們可以使用LEN函數,并將單元格區域A2:A6作為其參數text的值。
圖2
選擇公式中的參數值A2:A6,按F9評估,可以看到其提供了5個文本字符串,如下圖3所示。
圖3
如果選擇LEN函數并按F9評估,則可以看到該函數提供了5個值,如下圖4所示。
圖4
這意味著如果你給LEN函數的參數text提供多個項目,那么它也會給你返回多個值作為結果。
一般來說,如果對接受單個項目的函數參數使用多個項目,那么該函數將提供多個項目作為其返回值。當函數參數接受單個項目而你給其提供多個項目時,你創建了函數參數數組操作。
上文示例中的LEN函數提供了多個數字,可將其作為SUMPRODUCT函數的參數值來求和,如下圖5所示。
圖5
由于SUMPRODUCT函數可以處理數組操作,因此無需按Ctrl+Shift+回車鍵。
當查找表沒有排序時使用SUMPRODUCT/SUMIF函數
如下圖6所示,在單元格區域A3:C7中列出了每種產品的銷售額,現在想要計算這些產品的總毛利。這里的方法是,先添加一個輔助列,使用VLOOKUP函數在查找表中獲取每種產品的成本,然后求得總成本,最后使用總銷售額減去總成本得到毛利。
圖6
如果不允許使用輔助列,那么可以使用SUMIF函數來求得總成本,如下圖7所示。
圖7
通常情形下,給SUMIF函數的criteria參數指定單個項目,然而這里給它指定了5個單獨的項目,這使得其執行數組操作,因此其結果返回5個項目組成的數組。如下圖8所示,當使用F9來評估公式中的SUMIF函數時,其得到的是對應的成本數值。
圖8
注意,本示例中區域F4:F6中沒有重復值,因此公式能夠正常運轉。如果存在重復值,則會出錯。
將SUMIF函數返回的結果傳遞給SUMPRODUCT函數求和。
當查找表排序時使用SUMPRODUCT/LOOKUP函數
如果查找表已排序,那么使用LOOKUP函數替換上文中的SUMIF函數會更簡潔且更快。如下圖9所示,查找表中的產品列按升序排序。
圖9