當前位置: 首頁 > 考評動态 > 數組公式Part II:數組公式的計算過程

數組公式Part II:數組公式的計算過程

2019年06月25日 10:22:30 訪問量:798

問題:求産品AA的總價

 

B

C

D

3

産品編号

産品單價

産品數量

4

AA

1

100

5

BB

2

150

6

CC

3

200

7

AA

1

250

8

BB

2

300

350{=SUM(IF(($B$4:$B$8="AA"),($C$4:$C$8)*($D$4:$D$8),0))}

它的運算過程是這樣的:

1. IF函數先判斷$B$4:$B$8=AA的參數返回的結果為:


用公式表述為:

{=SUM(IF({TRUE;FALSE;FALSE;TRUE;FALSE},($C$4:$C$8)*($D$4:$D$8),0))}

2. 然後對返回TRUE的行項執行下一個運算,($C$4:$C$8)*($D$4:$D$8),對于返回FALSE的,則直接返回0

3. 到了這一步,公式返回出的是一組符合要求的數字了,該組數字用數組常量表示為{100;0;0;250;0}

4. 最後用SUM函數把這一組數組常量相加,得到最後結果:

350=SUM({100;0;0;250;0})

該公式可簡化為:

350{=SUM(($B$4:$B$8="AA")*($C$4:$C$8)*($D$4:$D$8))}

在加減乘除的運算中TRUE=1FALSE=0,所以邏輯值能直接參與運算。

但是SUM函數中如果引用的數據區域中含有邏輯值的話,是忽略邏輯值的,除非是直接作為參數。

所以當你需要在SUM中使數據區域中的TRUE=1,FALSE=0的話,必須要使TRUE/FALSE先參與一次四則運算,轉換成數值。

看看下面的例子能幫助你理解邏輯值是如何出來的,并能更好地理解上面這段話。

 

C

D

41

TRUE

=(1=1)

42

FALSE

=(1+1=1)

43

1

=TRUE+FALSE

44

-1

=FALSE-TRUE

45

0

=TRUE*FALSE

46

1

=SUM(TRUE,FALSE)

47

0

=SUM(C41,C42)

48

1

=SUM(C41*1,C42*1)

(來源于網絡)

編輯:考核評價處
評論區
發表評論

評論僅供會員表達個人看法,并不表明網校同意其觀點或證實其描述
教育部 中國現代教育網 不良信息 垃圾信息 網警110
陝西省寶雞中學版權所有
中華人民共和國電信經營許可證 京ICP備13002626号-8
聯系地址:陝西省寶雞市東開發區高新大道29号
京公網安備11010502032087
現代教育網 提供技術支持 違法和不良信息舉報中心
Copyright 2006-2019 baozhong.30edu.com.cn , All Rights Reserved
神池縣南關明德小學 玉樹州第二民族高級中學 高平市河西鎮初級中學校 教育觀察網 金寨現代産業園區實驗學校 肥東縣店埠學區中心學校 衡水市冀州區富甯學校 陝西省寶雞中學 澤庫縣第二民族中學 黑龍江省八五八農場子弟校 原平市實驗中學 繁峙縣教育科技局 甘肅省華池縣列甯學校 岢岚桃園昇實驗學校 敦煌路小學 北京市實驗學校 聊城幼兒師範學校 五寨縣第一小學校 山東省沂水縣實驗中學 河曲縣沙畔明德小學 手機版