【Excel應用】數組常量的使用
數組常量是數組公式的組成部分。可以通過輸入一系列項然後手動用大括弧 ({ }) 將該系列項括起來創建數組常量,如:
{1,2,3,4,5}(表示行數組常量)
或:
{1;2;3;4;5}(表示列數組常量)
數組常量的輸入必須藉助數組公式輸入組合鍵:Ctrl+Shift+Enter。
輸入數組常量
如果大括弧 ({ }) 括起來的數組常量系列使用逗號分隔(隔開)各個項,將創建水平數組(一行)。如果大括弧 ({ }) 括起來的數組常量系列使用分號分隔項,將創建垂直數組(一列)。要創建二維數組,應在每行中使用逗號分隔項,並使用分號分隔每行。
示例1:創建水平常量
1) 選擇單元格 A1 到 E1。
2) 在編輯欄中輸入公式(注意數字間用逗號「,」分隔):
={1,2,3,4,5}
3) 按 Ctrl+Shift+Enter確認。
結果將如圖 1所示。
圖1%注意:
在輸入公式時,必須鍵入左大括弧和右大括弧 ({ })。
示例2:創建垂直常量
1) 選擇單元格 A1 到 A5。
2) 在編輯欄中輸入公式(注意數字間用分號「;」分隔):
={1;2;3;4;5}
3) 按 Ctrl+Shift+Enter確認。
結果將如圖 2所示。
圖2示例3:創建二維常量
1) 選擇單元格 A1 到 C2。
2) 在編輯欄中輸入公式(注意同一行數字間用逗號「,」分隔,不同行之間用分號「;」分割):
={1,2,3;4,5,6}
3) 按 Ctrl+Shift+Enter確認。
結果將如圖 3所示。
圖3
在數組常量中,可以包含數字、文本、邏輯值(例如 TRUE 和 FALSE)和錯誤值(例如 #N/A)。可以使用整數、小數和科學計數格式表示的數字。如果包括文本(文本必須使用雙引號 (")括起來)。
數組常量不能包含其他數組、公式或函數。換言之,它們只能包含以逗號或分號分隔的文本或數字。
例:輸入如下所示的公式時,Excel 將顯示警告消息。
{1,2,A1:D4} 或 {1,2,SUM(Q2:Z8)}。
另外,數值也不能包含百分號、貨幣符號、逗號或圓括弧。
2. 在公式中使用常量
使用數組公式時,可以將數組常量用於 Excel 提供的所有內置函數中。
示例4:
1) 在區域A1:E1中分別輸入:1、2、3、4、5。
2) 在A3單元格中輸入公式:
=SUM(A1:E1*{1,2,3,4,5})
3) 按Ctrl+Shift+Enter確認。
最後得到A3單元格的公式為:{=SUM(A1:E1*{1,2,3,4,5})},結果如圖 4所示。
圖4
該公式定義等價於:=SUM(A1*1,B1*2,C1*3,D1*4,E1*5)。很明顯,這實際上是將兩個數組(區域A1:E5和數組{1,2,3,4,5})對應的值相乘,然後作為SUM函數的參數。因此,必須保證兩個數組的成員數一樣多(本例中都是5個),否則Excel將提示錯誤:#N/A。
%注意:
在輸入公式時,必須自己用一對大括弧({ })將數組常量括起來。
%小提示:
使用數組常量的最佳方式是對它們進行命名。命名的數組常量更易於使用,並且對於初學者來說,它們可以降低數組公式的複雜性。數組常量的命名與域命名是一樣,可以藉助「公式」選項卡中「定義的名稱」功能組來實現,具體請參考域名定義相關課程或文檔。
3. 數組常量應用示例
示例5:求一個數組中各項的平方
1)選中區域A1:C3。
2) 輸入公式:
={1,2,3;4,5,6;7,8,9}^2
3) 按Ctrl+Shift+Enter確認。
最後得到的結果如圖 5所示。
圖5示例6:轉置數組常量
1) 選中區域A1:B3。
2) 輸入公式:
=TRANSPOSE({1,2,3;4,5,6})
3) 按Ctrl+Shift+Enter確認。
最後得到的結果如圖 6所示。
圖6
示例7:引用現有區域的數據
沿用示例6(假定示例6的工作表名為「轉置數據」),新建一張工作表,假定新表的A1:B3公式定位為對應取示例6工作表的A1:B3。
1) 選中新表的區域A1:B3。
2) 輸入公式:
=轉置數組!A1:B3
3) 按Ctrl+Shift+Enter確認。
最後得到的結果如圖 7所示。
圖7示例8:查找出區域中的 n 個最大(或最小)值
沿用示例7,要找到A1:B3區域中最大(或最小)的2個數。
1) 選中A5:B5。
2) 輸入公式:
=LARGE(A1:B3,{1,2})(或=SMALL(A1:B3,{1,2}))
3) 按Ctrl+Shift+Enter確認。
最後將得到A1:B3區域中的最大(或最小)的2個數,如果定義的是尋找最大2個數的公式,得到的結果如圖 8所示。
圖8【本文為「職場達人 每日一招」原創,轉載請註明出處】
推薦閱讀:
※VBA數組和字典的經典用法及思路
※4分鐘寫完C語言動態數組
※Pandas Series用if判斷缺損值並修改,不影響原有空間
※數組基礎知識精華版
※數組,鏈表,二叉樹,這些是為了解決什麼問題而出現的呢?