按指定的行列數生成序號,大家平時用得比較多的是 row 和 column 函數。
Excel 升級到 O365 版本後,有了專門的序列函數。
O365 簡化了數組函數的調用,不需要按三鍵就能直接出結果。因此新函數不但可以生成單行、單列的序列,還可以生成一個二維序列區域。
函數說明:
作用:
在數組中生成一系列連續數字。
語法:
SEQUENCE(rows,[columns],[start],[step])
參數:
rows:必需,要返回的行數。
[columns]:可選,要返回的列數。
[start]:可選,序列中第一個數字。
[step]:可選,數組中每個連續值遞增的值。
說明:
任何缺少的可選參數都將默認為 1。
數組可以是一行或一列,也可以是行和列的組合。
SEQUENCE 函數會返回一個數組,如果該數組是公式的最終結果,則會溢出。這意味著,當按下回車鍵時,Excel 將動態創建相應大小的數組範圍。對於 Excel 表格中的數據,若使用結構化引用,則從數組範圍中添加或刪除數據時,數組將自動重設大小。
Excel 對工作簿之間的動態數據提供有限支持,並且僅當這兩個工作簿時都處於打開狀態時才支持此方案。如果關閉源工作簿,刷新時,任何連結的動態數組公式都將返回 #REF! 錯誤 。
案例 1:
生成一列 1 到 20 的順序編號。
解決方案 1:
在 A1 單元格中輸入以下公式:
=SEQUENCE(20)
公式釋義:
生成一個 20 行、1 列的序列值
默認起始值和步長都為 1
案例 2:
生成起始值為 5,步長為 5,一共 10 行的一列編號。
解決方案 2:
在 B1 單元格中輸入以下公式:
=SEQUENCE(10,,5,5)
公式釋義:
10,,:行數為 10,第二個參數預設,表示默認列數為 1
5,5:起始值為 5,步長為 5
案例 3:
將 1 到 30 的數字按順序排列成 5 行 6 列。
解決方案 3:
在 D1 單元格中輸入以下公式:
=SEQUENCE(5,6)
公式釋義:
生成一個 5 行 6 列的數組
起始值和步長都為 1
案例 4:
生成一行從星期一到星期日的順序值。
解決方案 4:
在 K1 單元格中輸入以下公式:
=TEXT(SEQUENCE(1,7,2),"aaa")
公式釋義:
SEQUENCE(1,7,2):橫向生成 1 行從 2 到 8 的順序數組
TEXT(...,"aaa"):
將上述數組轉換為星期的縮寫
因為默認每星期的第一天是禮拜天,所以禮拜一為 TEXT(2,"aaa"),依次類推
案例 5:
將下圖 1 中的姓名列轉換為 3 行 3 列的數組區域。
效果如下圖 2 所示。
解決方案 5:
在 F1 單元格中輸入以下公式:
=INDEX(A:A,SEQUENCE(C2,D2,2))&""
公式釋義:
SEQUENCE(C2,D2,2):生成一個 3 行 3 列的數組區域,其中的值從 2 開始,步長為 1 順序遞增,結果如下圖所示
INDEX(A:A,...):返回 A 列中的第 n 個值,n 就是上圖中的數組
&"":作用是將無意義的 0 值轉換成文本,從而不讓其顯示,不過在本例中,即使不加也沒有太大影響
Excel學習世界
轉發、在看也是愛!