跳转至

SEQUENCE 函数

函数概述

SEQUENCE 用于生成连续的数字序列数组,并以“溢出”的方式一次性返回到多个单元格中。你可以控制生成的行数、列数、起始值、步长,从而快速构建序号、等差数列、日期序列(配合日期函数)、二维编号矩阵等。

常见用途:

  • 生成 1~n 的序号列
  • 生成等差数列(如 5,10,15...)
  • 生成二维网格编号(行列矩阵)
  • 作为其他函数(如 INDEXFILTERTAKECHOOSECOLS 等)的输入数组

基础语法

=SEQUENCE(rows, [columns], [start], [step])

参数说明

参数 是否必填 含义 示例
rows 必填 返回数组的行数 5 表示 5 行
columns 可选 返回数组的列数,默认 1 3 表示 3 列
start 可选 序列起始值,默认 1 10 从 10 开始
step 可选 步长(公差),默认 1 2 每次加 2

补充说明:

  • rowscolumns 通常为正整数。
  • step 可以为负数,用于生成递减序列。
  • 结果为动态数组,会自动溢出到相邻单元格。

基础用法示范

示例1:生成序号列

生成 1 到 10 的序号:

=SEQUENCE(10)

返回 10 行 1 列:1,2,3,...,10

示例2:生成二维矩阵

生成 4 行 3 列的矩阵(从 1 开始,步长 1):

=SEQUENCE(4,3)

返回:

  • 第 1 行:1 2 3
  • 第 2 行:4 5 6
  • 第 3 行:7 8 9
  • 第 4 行:10 11 12

示例3:自定义起点

从 100 开始生成 8 个数:

=SEQUENCE(8,1,100)

返回:100,101,102,...,107

示例4:自定义步长

生成等差数列 5, 10, 15, 20, 25:

=SEQUENCE(5,1,5,5)

示例5:生成递减序列

从 10 开始每次减 2,生成 6 个数:

=SEQUENCE(6,1,10,-2)

返回:10,8,6,4,2,0

示例6:生成表头编号

生成 1 到 12 的横向编号(1 行 12 列):

=SEQUENCE(1,12)

常用于制作月份表头或字段序号。

示例7:配合日期序列

生成从某天起连续 7 天(假设 A1 是起始日期):

=A1+SEQUENCE(7,1,0,1)

说明:SEQUENCE 产生 0~6,再与日期相加得到连续日期。

示例8:生成二维坐标索引

构建行号与列号的索引网格(用于辅助查找):

  • 行号(5 行 1 列):
=SEQUENCE(5,1)
  • 列号(1 行 6 列):
=SEQUENCE(1,6)

把它们作为其他公式的参数,可快速搭建二维引用逻辑。

总结

SEQUENCE 是动态数组时代非常高频的“造数工具”。通过控制行列、起点与步长,它能快速生成一维或二维的连续序列,并作为其他函数的输入数组,显著减少手动填充与辅助列的工作量。实际建模时,优先考虑用 SEQUENCE 来生成序号、索引与规则网格,再组合其他函数完成筛选、取数和汇总,会让表格更简洁、更自动化。