在 Excel 裡,陣列的使用非常重要,對於學習者一個很大的門檻。通常有程式設計經驗者,要理解陣列的觀念與應用,應該都不是難事,而沒有程式設計基礎的人,對這些一個一個儲存格組成的陣列,真的就傷腦筋了。本文試著來說明 Excel 2021 版開始的陣列使用。

Excel-陣列的使用(比較2021版和先前的版本)

陣列是由「{、}」包含一些資料組成的集合:

1. 以分號隔開的陣列:{1;2;3;4;5}

例如公式:=ROW(1:5),會產生 {1;2;3;4;5} 陣列,本例為多列組成的儲存格範圍。

2. 以逗號隔開的陣列:{1,2,3,4,5}

例如公式:=COLUMN(A:E),會產生 {1,2,3,4,5} 陣列,本例為多欄組成的儲存格範圍。

如果是 {1;2;3;4;5} 陣列和 {1,2,3,4,5} 陣列可稱為陣列常數,因為內容是固定的。

而 ROW(1:5) 陣列和 COLUMN(A:E) 陣列也是陣列常數,因為內容也是不會變的。

如果要表達多列多欄組成的陣列,同時會用到分號和逗號,如圖中的陣列:{1,2,3;4,5,6;7,8,9;10,11,12}。

註:圖中的 ARRAYTOTEXT 函數,可以將儲存格內容轉成陣列型式的字串。可以轉成「1,2,3」或是「{1,2,3}」型式。

 

Excel-陣列的使用(比較2021版和先前的版本)

1. Excel 2021版以前做法

(1) 儲存格B2:=A3*1.2。

(2) 複製儲存格B2,貼至儲存格B2:B9。

2. Excel 2021版以後新增做法

(1 )儲存格C2:=A2:A9*1.2。

(2) 公式會自動溢出至儲存格C2:C9。

國文成績的儲存格範圍就是一個陣列。所以,只要一個儲存格填入公式,公式會自動溢出至陣列範圍的儲存格,不需要做複製儲存格的動作。

 

Excel-陣列的使用(比較2021版和先前的版本)

Excel 2021版之後新增的做法:

(1) 儲存格C2:=B2:B11*C2:C11

(2) 公式會自動溢出至儲存格D2:C11。

單價和數量的儲存格範圍也都是一個陣列。只要一個儲存格填入公式,公式會自動溢出至陣列範圍的儲存格,不需要做複製儲存格的動作。

 

Excel-陣列的使用(比較2021版和先前的版本)

選取儲存格A1:D1,按 Ctrl+Shift+F3 鍵,勾選「最左欄」,定義名稱:加權。

在此,加權就是一個陣列。

(1) 以前做法,儲存格E3:=SUMPRODUCT(B3:D3*加權)

SUMPRODUCT 函數內容都是以陣列的形式在運算。

(2) 以前做法,儲存格E3:{=SUM(B3:D3*加權)}

以前的陣列公式,輸入完成要按 Ctrl+Shift+Enter 鍵,Excel 會自動加上「{}」。

(3) 現在做法,儲存格E3:=SUM(B3:D3*加權)

在 Excel 2021 版之後,不需要再按 Ctrl+Shift+Enter 鍵。

 

Excel-陣列的使用(比較2021版和先前的版本)

(1) 做法一,儲存格B2:=IF(A2:A9>=60,A2:A9,"")

(2) 做法二,儲存格B2:=FILTER(A2:A9,A2:A9>=60)

以上兩種方式,在 Excel 2021 版之後,公式都會自動溢出至其他儲存格。

FILTER 函數是 Excel 2021 版之後才能使用。

 

Excel-陣列的使用(比較2021版和先前的版本)

在 Excel 2021 版之後的 OFFSET 函數使用:

(1) 儲存格B2:=OFFSET(A2,3,0,5,1)

(2) 公式會自動溢出至其他儲存格。

公式結果會產生一個儲存格範圍,這也是一個陣列。只要一個儲存格填入公式,公式會自動溢出至陣列範圍的儲存格,不需要做複製儲存格的動作。

 

Excel-陣列的使用(比較2021版和先前的版本)

1. 使用UNIQUE 函數(列出不重覆項)

(1) 儲存格B2:=UNIQUE(A2:A13)

(2)公式會自動溢出至其他儲存格。

公式也是對陣列操作,所以公式會自動溢出至陣列範圍的儲存格,不需要做複製儲存格的動作。

2. 使用 SORT 函數(對不重覆項排序)

(1) 儲存格B2:=SORT(UNIQUE(A2:A13))

(2) 公式會自動溢出至其他儲存格。

UNIQUE 函數和 SORT 函數是 Excel 2021 版之後才能使用。

 

【延伸學習】

 Excel-以製作九九乘法表說明陣列和非陣列公式

 Excel-FILTER和OFFSET的動態陣列

 Excel-輸入具陣列形式的公式

 Excel-列出非空白項目的清單(比較篩選函數和以陣列公式模擬篩選)

 Excel-使用ARRAYTOTEXT函數取得陣列文字

 Excel-使用傳統陣列和動態陣列公式列出模糊搜尋清單

 Excel-動態陣列公式和溢出陣列行為

 

【參考資料】

 UNIQUE 函數參考微軟提供的說明網頁:UNIQUE 函數
 FILTER 函數參考微軟提供的說明網頁:FILTER 函數
 SORT 函數參考微軟提供的說明網頁:SORT 函數
 OFFSET 函數參考微軟提供的說明網頁:OFFSET 函數
 SUMPRODUCT 函數參考微軟提供的說明網頁:SUMPRODUCT 函數
 

學不完.教不停.用不盡文章列表

arrow
arrow
    文章標籤
    Excel 陣列
    全站熱搜

    vincent 發表在 痞客邦 留言(0) 人氣()