上一篇介紹了:Excel-求數列中的每個數值經運算後的平均(陣列公式)
網址:http://isvincent.pixnet.net/blog/post/39452901
運用相同觀念來讓學生練習:計算多個儲存格之字元個數總和。參考下圖的多個儲存格中,每個儲存格的字元個數都不相同,如何計算各種狀況的字元個數總和呢?
【實作】
基本上,使用 SUMPRODUCT 函數即可完成所有計算:
(1) 全部字元數之總和
儲存格E2:=SUMPRODUCT(LEN(A2:A20))
使用 LEN 函數,找出每個儲存格中的字元個數。
(2) >12字元之總和
儲存格E3:=SUMPRODUCT((LEN(A2:A20)>12)*(LEN(A2:A20)))
LEN(A2:A20)>12:找出儲存格字元大於 12 的儲存格陣列。
(3) 偶數字元之個數
儲存格E4:=SUMPRODUCT(ISEVEN(LEN(A2:A20))*1)
ISEVEN(LEN(A2:A20):找出儲存格字元為偶數的儲存格True/False 陣列。「*1」的用意為將 True/False 陣列轉換為 1/0 陣列。
(4) 奇數字元之個數
儲存格E5:=SUMPRODUCT(ISODD(LEN(A2:A20))*1)
ISODD(LEN(A2:A20):找出儲存格字元為奇數的儲存格 True/False 陣列。
(5) 偶數字元之總和
儲存格E6:=SUMPRODUCT(ISEVEN(LEN(A2:A20))*(LEN(A2:A20)))
(6) 奇數字元之總和
儲存格E7:=SUMPRODUCT(ISODD(LEN(A2:A20))*(LEN(A2:A20)))
【練習】
你可以試著使用陣列公式來運算,參考答案:(輸入公式完,請按 Ctrl+Shfit+Enter 鍵)
儲存格E2:{=SUM(LEN(A2:A20))}
儲存格E3:{=SUM((LEN(A2:A20)>12)*(LEN(A2:A20)))}
儲存格E4:{=SUM(ISEVEN(LEN(A2:A20))*1)}
儲存格E5:{=SUM(ISODD(LEN(A2:A20))*1)}
儲存格E6:{=SUM(ISEVEN(LEN(A2:A20))*(LEN(A2:A20)))}
儲存格E7:{=SUM(ISODD(LEN(A2:A20))*(LEN(A2:A20)))}
留言列表