tft每日頭條

 > 科技

 > sum函數的應用

sum函數的應用

科技 更新时间:2025-01-28 11:27:47

你想要的SUM函數的應用,這裡都有

繼上一篇文章說了一下SUM函數基本的運算邏輯,這一篇文章有更多的例子來闡述它的各種用法。

SUM函數以引用的運算作參數

如下表所示:

sum函數的應用(你想要的SUM函數的應用)1

1. 區域聯合求和

SUM((A1:A10,C5,D2:D7))

我們得到結果287

我們僅對表中的幾個區域進行求和。并沒有全部求和。請注意區域聯合運算外的一對括号,此運算在SUM函數中隻算1個參數,當SUM中的參數超過30個時,就可以這樣使用。

2. 區域交叉求和

SUM((B1:C10 A4:D6))

我們得到結果120。

注意括号及2個引用間的空格,它完成了交叉引用。在SUM函數中也隻算1個參數,此處實際運算返回的是B1:C10和A4:D6相交的B4:C6區域

3. 交叉引用在數組公式中可以繼續進行計算。

{=SUM(((A1:D10 B:B)>15)*(A1:D10 B:B))}

我們得到結果90。

這個公式實際上計算的是B1:B10區域大于15的所有值的和

4. SUM函數以三維引用作參數

假設sheet1、sheet2、sheet3三個工作表的A1單元格的值都為10。

SUM(Sheet1:Sheet3!A1)

我們得到的結果為30

其實公式就是對sheet1、sheet2、sheet3三個工作表的A1單元格求和。

三維引用更為複雜的用法,暫且就不說了。

5. SUM函數的累計求和

以前上小學的時候,老師就出過一個題目,如何快速的求1-100的和。對于SUM函數來說,公式如下:

SUM(ROW(1:100))

我們得到的結果5050。

實際應用中,可能你求的值不是1-100,或是1-505,每次要求的值都不固定。

如下表,A1單元格的數字為可變的。

sum函數的應用(你想要的SUM函數的應用)2

A1為可輸入的單元格

我們使用sum indirect row的組合來完成它。

公式如下:

SUM(ROW(INDIRECT("1:"&A1)))

當A1輸入你想要輸入的數值時,C1會得到對應的結果。

這裡我們用到了indirect,我們用”1:”&單元格引用的形式,構造了一個動态的引用,A1可以是5,也可以是105。而Indirect的意思就是将一個文本轉化成一個單元格引用。

6.Sum函數的文本求和。

這與篇一講的文本是不一樣的,這裡隻是單元格的值是數字和文本的組合,如下表:

sum函數的應用(你想要的SUM函數的應用)3

要求和的數據

當我們要求總金額的時候,是無法得到你想要的結果的。

在這裡我們引入SUBSTITUTE函數,具體的公式如下:

SUM(--SUBSTITUTE(A2:A10,"元",""))

我們得到結果353

前篇文章中也說過了,文本是沒有辦法求和的。而SUBSTITUTE函數的作用為:用指定的新字符串替換原有字符串中的舊字符串。語法結構如下:

SUBSTITUTE (數據區域,舊字符串,新字符串,[替換位置])

公式中,我們首先利用SUBSTITUTE函數将“元”替換為空值,并強制轉換(--)成數值類型,最後用Sum函數求和

7. SUM函數在數組公式中的一些應用

現有如下數據表:

sum函數的應用(你想要的SUM函數的應用)4

計數和求和的數據表

  1. A部門的男性員工有幾人?這是多條件計數。公式如下:{=SUM(IF((B2:B11="A")*(C2:C11="男"),1,0))}(B2:B11="A")*(C2:C11="男") 返回2個邏輯數組的乘積,基于TRUE*TRUE=1;TRUE*FALSE=0;FALSE*FALSE=0,所以此處是邏輯與的關系,在excel的IF函數的條件中,0表示FALSE,非0的數值表示TRUE。我們可以去除IF函數可以簡化公式為:{=SUM((B2:B11="A")*(C2:C11="男"))}如有2個以上并列條件,可将幾個條件式相乘。
  2. A、B兩部門的男性員工有幾人?公式如下:{=SUM(((B2:B11="A") (B2:B11="B"))*(C2:C11="男"))}基于TRUE FALSE=1;FALSE FALSE=0;TRUE TRUE=2,而(B2:B11="A")和(B2:B11="B")不可能同時滿足,所以此處是條件或的關系,再乘以(C92:C105="男")作為并列條件。
  3. A部門所有女性員工和A部門工資5500以上的男性員工總數是多少?公式如下:{=SUM((B2:B11="A")*NOT(NOT((C2:C11="女") (D2:D11>=5500))))}因為(C2:C11="女")和(D2:D11>=5500)可能同時滿足,所以再用NOT(NOT())轉換,基于NOT(TRUE)=FALSE;NOT(FALSE)=TRUE;NOT(0)=TRUE;NOT(非0數值)=FALSE。

從上面的三個典型的例子,我們可以看出,邏輯值在數組運算中有着絕妙用處。

  1. A部門女性員工的工資總額是多少?這是多條件求和了。公式如下:{=SUM((B2:B11="A")*(C2:C11="女")*D2:D11)}同樣基于:FALSE*任何數=0;TRUE*任何數=原來的數,(B2:B11="A")*(C2:C11="女")為并列條件,* D2:D11後就是滿足條件的工資。
  2. 所有女性員工的工資和男性員工工資5500以上的工資總額是多少?公式如下:{=SUM(NOT(NOT((C2:C11="女") (D2:D11>=5500)))*D2:D11)}如加IF函數就可以不用NOT(NOT()):{=SUM(IF((C2:C11="女") (D2:D11>=5500),1)*D2:D11)}我們以(C2:C11="女") ( D2:D11>=5500)這樣的形式表示條件或的關系,在條件可能同時滿足時要用NOT(NOT())轉換或用IF函數判别。否則會多計數量的。大家可以記住這樣的應用方法。
  3. 統計奇數行的工資總和是多少?公式如下:{=SUM((MOD(ROW(D2:D11),2)=1)*D2:D11)}

{=SUM((MOD(ROW(D2:D11),2)=1)*D2:D11)}

其中的(MOD(ROW(D2:D11),2)=1)就是判别是否奇數行。

這兩篇文章所列出的的公式,幾乎涵蓋了SUM函數在絕大多數情況下的典型應用。如果大家能夠融會貫通,舉一反三,必定能成倍地提高你的工作效率,化繁為簡。

希望大家多關注點贊。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved