excel數組的學習和應用,筆記3,權亮

1 兩列數據之差的和計算
計算下列兩列數據相減後的和.
解答:我們一般計算這樣的方法是b2-a2,得出來的結果,向下複製,就得到了各列之差,最後我們在下面輸入sum函數即可求出來.
我們用數組的方法,可以直接b2:b11-a2:a11,求出來對應的差.但是方法有個前提條件,就是提前選中要被求差結果的單元格,如果只選擇b-a列的第二個單元格,他不會全部都求出,必須全部選出來,另外一個條件是數組的計算必須按ctrl+shift+enter纔可以出結果.
在這裏插入圖片描述
在這裏插入圖片描述
我b-a列選中了所有等待求值的單元格,然後我只輸入了一個等式,然後點擊ctrl+shift+enter就得到下面圖的結果了.
最後我們使用sum函數就能求出這一列的值.

在這裏插入圖片描述

既然數組這麼方便,那我們是不是可以直接求出來這個求和運算.也就是在數據運算前面直接價格sum函數.

在這裏插入圖片描述
在這裏插入圖片描述

數據運算大大方便了我們的運算速度,過去我們需要求出每一行,再求和.現在可以直接使用數組相減求和/

2 判斷身份證長度

在這裏插入圖片描述

提示:上面的身份證有位數長度正確的,不正確的,我們要找出來.
身份證長度18,過去有的人身份證長度15位.
Or,and函數無法對數組進行使用,因爲這兩個函數只能返回一個值,true或者false.可以用+*來代替.
+代表or,*代表and.這是我反覆試驗無數次,反應過來,然後百度後知道的結論,希望大家不要走進這兒誤區.也就是說+*和and,or不完全相當.
解答:
過去我們的方法我們可以使用len函數,or,and函數判斷這個身份證是不是正確的長度.然後再求出所有的結果
現在我們用if函數,數組直接求出來.
公式解釋一下,b2:b11的值如果等於15或者等於18其中一個,則返回true,並且顯示true,否則返回false,並且顯示false.

在這裏插入圖片描述

3 多條件求和
我們要求一車間男性的工資的和.前提是兩個條件,一車間和男性.
在這裏插入圖片描述

解答:
使用sum函數,如下圖.,我們可以看到是三個數組相乘,這三個數組第一個數組是某一個數組等於一車間,第二個數組是等於男,第三個數組是工資數.有人會說,前兩個數組相當於篩選,可是這三個數組的相乘怎麼理解呢?
第一個數組相當於返回的是一個{TRUE;FALSE;TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;FALSE}的數組.第二個數組相當於返回的是{TRUE;FALSE;TRUE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE},前兩個數組相乘結果是{1;0;1;0;0;0;0;0;0},再相乘第三個數組,相乘我們就得到. {2400;0;2000;0;0;0;0;0;0},最後求和.得到我們想要的函數.

在這裏插入圖片描述

4 判斷是否退休, 男士:60歲及以上;女式:55歲及以上。
在這裏插入圖片描述

解答:
提示這個題我們要求的是,男性大於60,女性的話大於55的人.
我們使用數組直接進行求.
在這裏插入圖片描述

解釋一下,這個公式,性別列等於男的,且年齡列大於等於60的人或者性別列等於女的,且年齡大於等於55的人,只要滿足一個條件,就返回1,否則返回0.
爲了顯示準確,我們可以用if來標識是否退休.

在這裏插入圖片描述

5 使用sumproduct函數求三個品牌的銷售數量
在這裏插入圖片描述

提示:sumproduct函數格式爲SUMPRODUCT(array1, [array2], [array3], …).這個函數是在給定的幾組數組中,將數組間對應的元素相乘,並返回乘積之和.
這個函數的功能及其強大.
解答:我們瞭解到這個函數是對不用列的乘積求和,如果我們只有一列,那就意味着只是求和.
如圖
在這裏插入圖片描述
先對於品牌進行篩選,($A2:2:A12=F2)TRUE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE.12=F2)結果是{TRUE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE}. 然後和B2:2:D$12進行相乘,結果爲{39,75,38;0,0,0;10,71,80;0,0,0;0,0,0;13,87,60;0,0,0;0,0,0;0,0,0;0,0,0;0,0,0}.最後進行求和,得到我們想要的結果.
在這裏插入圖片描述

我們觀察到,sumproduct函數在只有一列的時候,其實和sum函數幾乎一樣作用.

6 利用large函數進行從大到小”行排序”.
提示:large函數:格式爲 LARGE(array,k),LARGE 函數語法具有下列參數:Array必需。 需要確定第 k 個最大值的數組或數據區域。K 必需。 返回值在數組或數據單元格區域中的位置(從大到小排)
如果進行排序,我們可以利用k從大到小進行顯示.
在這裏插入圖片描述

在這裏插入圖片描述

我們觀察第一行數據,如果希望從大到小的排序,我們就要將第一大的數字放在m列,第二大的數字放在n列,以此類推,最小的放在s列.
Column函數:格式爲column(reference) ,如果省略reference,則默認返回函數column所在單元格的列數.
解答:
在這裏插入圖片描述

使用large函數,首先我們是以行進行排序,那我們需要固定單元格的列名,之後需要確定排名,m列的是第一,n列第二,直到最小的放在s列.我們使用column函數,column()確定m列的是13,那麼我們-12,就是1,n列是14,同理是2,以此類推

在這裏插入圖片描述
7 利用frequency函數計算頻率.

在這裏插入圖片描述
在這裏插入圖片描述

提示:frequency函數:格式爲FREQUENCY(data_array, bins_array)
data_array 必需。 要對其頻率進行計數的一組數值或對這組數值的引用。 如果 data_array 中不包含任何數值,則 FREQUENCY 返回一個零數組。
bins_array 必需。 要將 data_array 中的值插入到的間隔數組或對間隔的引用。 如果 bins_array 中不包含任何數值,則 FREQUENCY 返回 data_array 中的元素個數
解答:
在這裏插入圖片描述
輸入參數後,結果如.
在這裏插入圖片描述

8 Sumproduct和sumifs的進階使用
在這裏插入圖片描述
提示:sumifs函數中的各個條件之間是且,and的關係.如果想表達or,或者的關係,就要使用加法.
兩個數組相乘等於兩個數組想對應的參數相乘.
結果如下
在這裏插入圖片描述

公式如下:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章