最近有人剛好問到我陣列的相關問題,其實陣列這件事情,簡單的很簡單,複雜的很複雜,但不論怎樣,萬事起頭難,再怎麼複雜的陣列公式,都還是得先從最基礎的部份了解起,以陣列來說,阿湯今天就從最基本的一維跟二維陣列來說起,順便教大家應該怎麼拆解陣列,之後當你遇上陣列公式時,不要慌,先拆解後看懂就不用怕了,往下來看吧。

Excel 教學 – 陣列基礎說明

首先,我們先來了解一下陣列的型態,主要有二種,一種叫做「水平陣列」,比如下圖中的 A1:D1,這樣叫水平,只有一行或一列也叫做一維陣列,也就是座標的概念,只有 X。

水平陣列一般在 Excel 裡要表示的話,會是用逗號隔開,像是 {1,2,3,4}。

Excel 小教室 - 陣列基礎說明,在使用陣列之前先看懂它 01 23

而像 A1:A4 這就叫垂直陣列,也是一維陣列,不過如果是 A1:D1 再和 A1:A4 對比起來就可以形成二維陣列。

垂直陣列在 Excel 裡要表示的話,會是用分號隔開,像是 {1;2;3;4}。

Excel 小教室 - 陣列基礎說明,在使用陣列之前先看懂它 02 25

在了解陣列的基本形態後,我們來實戰一下,比如,我今天是想要運算 10*A1 + 10*B1 + 10*C1 + 10*D1,就不需要寫那麼冗長,我們只要利用陣列公式如下:

{=SUM(10*A1:D1)}

最外圈的 { },會是在輸入完公式 =SUM(10*A1:D1) 後,按下 Ctrl + Shift + Enter 才會顯示出來的,不需要自行手動打。

而上面的公式拆開後就長成 = 10*A1 + 10*B1 + 10*C1 + 10*D1,最後答案就是 100。

Excel 小教室 - 陣列基礎說明,在使用陣列之前先看懂它 04 18

再來是二層的陣列互相乘積相加,比如我們要做的陣列公式如下:

{=SUM(A1:D1*A2:D2)}

以上公式拆解後長這樣:

(A1*A2+B1*A2+C1*A2+D1*A2) + (A1*B2+B1*B2+C1*B2+D1*B2) + (A1*C2+B1*C2+C1*C2+D1*C2) + (A1*D2+B1*D2+D1*D2+D1*D2)

每一層會循環相乘相加後得出結果,這樣大家有看懂了嗎?陣列基本上就是一種循環的概念,每個數據都能夠重複完成執行,像阿湯這樣只是運用在「運算式」上,當你了解了陣列的基本概念後,之後也可以用在文字、日期等其他內容使用,再搭配其他函數來使用,就可以創造出更強大的內容了。

Excel 小教室 - 陣列基礎說明,在使用陣列之前先看懂它 05 13

Last Update: 2020 年 08 月 28 日