全套Excel視頻教程,微信掃碼觀看
數組,是Excel中一個必不可少的內容,相信很多同學都有接觸過,但是由于數組的理論部分較多,且略為枯燥和難懂,相信不少小伙伴對于它都是似懂非懂的,今天小編就嘗試用通俗易懂的語言,把數組的知識分享給大家。
1
數組介紹
① 數組的定義
所謂數組,是指按一行一列或多行多列排列的一組數據元素的集合,數據元素包括:數值、文本、日期、邏輯值和錯誤值。
一千個讀者就有一千個哈姆雷特,每個人對數組的理解也不會完全相同,而春風的理解是,Excel里的數組是指多個單元格數據元素的組合。假設某班級里有30個學生,如果班級是數組,30個學生就是數組里的30個元素。放到Excel里,學校就相當于sheet表,班級就是數組,而學生就相當于單元格的數值。
② 數組的表示
數組公式用大括號“{}”進行標識,便于區別于普通的Excel公式。
③ 數組的維數
數組的維度指數組的行列方向,一行多列的數組為橫向數組,一列多行的數組為縱向數組,多行多列的數組則同時擁有縱向和橫向兩個維度。數組的維數是指在數組中不同維度的個數,像一行或一列這種在單一方向上延伸的數組,稱為一維數組,多行多列同時擁有兩個維度的數組稱為二維數組。
一維縱向數組的各元素用半角“;”間隔,我們可以簡單地看成是一列單元格數據的集合,比如尺寸為4行×1列的數組“={1;2;3;4}”。一維橫向數組的各元素用半角“,”間隔,同樣,可以簡單地看成是一行單元格數據的集合,比如尺寸為1行×4列的數組“={1,2,3,4}”。這一點我們在昨天的文章《要不是我會點Excel知識,能被老板玩死【Excel教程】》中也提到過。
二維數組可以看成是一個多行多列的數據集合,也可以看成是多個一維數組的組合。如單元格A1:C2,就是一個2行3列的二維數組。我們也可以把它看成是A1:C1、A2:C2兩個一維橫向數組的組合。二維數組里同行的元素間用逗號“,”分隔,不同行的元素用分號“;”分隔。
從上圖中可以看出,在二維數組里,不同行的元素間的分隔符是“;”,所以,要判斷一個數組是幾行幾列的數組,只需要看里面的逗號和分號就知道了。
2
數組公式
① 數組公式
什么是公式?個人理解,在Excel里,凡是以半角符號“=”開始的,具有計算功能的單元格內容就是所謂的Excel公式。如“=SUM(B2:D2)”、“=B2+C2+D2”這些都是公式。數組公式與普通公式不同,普通公式只占用一個單元格,只返回一個結果。而數組公式可以占用一個單元格,也可以占用多個單元格,且它對一組數或多組數進行多重計算,并返回一個或多個結果。比如,老師把集合在教室外面的同學叫進教室,老師說“柯鎮惡同學進教室”,于是柯鎮惡走進教室,老師就這樣挨個叫學生進入教室,一個座位叫一次,就像一個單元格輸入一個公式,這就是普通公式的處理方法。接著老師叫“全真七子進教室”,七位同學一起進入教室,這是數組公式的處理方法。
② 輸入數組公式
如果需要把數組輸入到單元格區域里,首先得看數組是幾行幾列,然后再選擇相應的單元格區域,輸入公式后按“Ctrl+Shift+Enter”組合鍵結束公式(這個很重要!),Excel會自動給公式最外邊加上“{}”用于和普通公式區別開來。比如,選中A1:A4單元格,在編輯欄輸入:={1;2;3;4}后,按“Ctrl+Shift+Enter”組合鍵結束公式,這樣一來,一個一維數組就被輸入到工作表的單元格里了。
完成公式的輸入后,不能單獨改變、移動、刪除數組公式區域的某一部分單元格,也不能在該區域中插入新的單元格,否則會彈出“無法更改部分數組”的對話框。
3
數組運算
在對數組公式有了一個簡單的了解之后,我們將通過一個簡單的例子來進一步認識數組公式與常規公式。
比如,需計算下圖中每件商品的銷售金額。很簡單,在D2單元格輸入公式“=B2*C2”,下拉公式即可。我們試著用數組公式來解決這個問題,選中D2:D4輸入公式“=B2:B4*C2:C4”,按“Ctrl+Shift+Enter”組合鍵結束數組公式,即可得到同樣的結果。這就是一個多單元格的數組公式,它可以進行批量計算,以節省計算的時間。
在對數組的計算有了基本的認識后,下面我們進行相同維數和不同維數的數組運算。
① 相同維數數組運算
相同維數的數組運算,要求數組的大小必須一致,否則運算結果的部分數據將返回“#N/A”錯誤。
比如,要查找研發部門“楊過”的工號,只需要選擇H5單元格,在編輯欄中輸入“=INDEX(E3:E12,MATCH(H3&H4,B3:B12&C3:C12,0))”,按“Ctrl+Shift+Enter”組合鍵即可在H5單元格中返回該員工的工號。
公式中連接了兩個一維區域進行引用運算,如“B3:B12&C3:C12”,生成同尺寸的一維數組,再利用MATCH函數進行定位判斷,返回查詢員工在該區域中的位置序號,即6,然后使用INDEX函數在E3:E12單元格區域中返回第6行的員工工號信息。
② 不同維數數組運算
不同維數的數組運算可以分為一維數組、一維數組和二維數組以及二維數組之間的運算。計算不同維度的一維數組時,如1行×3列的水平數組與4行×1列的垂直數組,它們將生成新的4行×3列的二維數組,如選擇A9:C12單元格區域,在編輯欄中輸入“=A4:A7&B1:D1”。按“Ctrl+Shift+Enter”組合鍵即可用兩個一維數組生成一個二維數組。
可見,單列數組與單行數組的計算結果是返回一個多行多列的數組,返回數組的行數同單列數組的行數相同,列數同單行數組的列數相同。如果要返回數組中第R行第C列的元素,就等同于返回單列數組第R個元素和單行數組第C個元素的運算結果。
計算一維數組與二維數組時,它們在相同維度上的元素個數必須相等,否則結果將出現“#NA”錯誤。比如,需要計算下圖中各班的綜合評分,綜合評分為評分標準對應的分數乘各科權重的和。選中E11單元格,在編輯欄中輸入公式“=SUM(B$3:D$3*SUMIF(A$10:A$13,B$4:D$7,B$10:B$13)*(A$4:A$7=D11))”,按“Ctrl+Shift+Enter”組合鍵結束公式,即可計算出六年一班的綜合評分,選中E11單元格,下拉填充至E14單元格,即可計算出其他班級的綜合評分。
下面我們以E11單元格的計算過程為例,說明函數的運算過程。本例中使用了兩個函數,求和函數SUM,條件求和函數SUMIF。公式中“B$3:D$3”生成了一個由各科目權重值組成的1行×3列的一維數組,“SUMIF(A$10:A$13,B$4:D$7,B$10:B$13)”生成了一個由4個班級中各科目評分標準值組成的4行×3列的二維數組,二者相乘即生成了一個由4個班級中各科目的綜合評分組成的4行×3列的二維數組,“A$4:A$7=D11”可以的得到由TRUE、FALSE組成的4行×1列的一維數組,其中FALSE代表0,TURE代表1,它們與前面的計算結果相乘后生成了一個4行×3列的二維數組,最后對相乘完的二維數組進行求和運算就得到了所需的結果。
我們從數組介紹、數組公式、數組運算三大方面介紹了數組,相信大家以后看到等號外面帶“{}”的公式就不會再陌生了,關于數組的應用方法就介紹到這,聰明的你有什么別的想法,歡迎留言。
Excel教程相關推薦
讓工作提速百倍的「Excel極速貫通班」