如何在 Excel 和 Google Sheets 中逐步使用 SEQUENCE 函数

最后更新: 12月24 2025
  • SEQUENCE 函数通过自定义行、列、起始值和增量来生成连续数字数组。
  • 它可以与其他函数(如 TEXT、DATE、ROW 或 RANDOM)结合使用,以创建日历、测试数据和动态编号。
  • SEQUENCE 在最新版本的 Excel 和 Google Sheets 中均可用,但语法略有区域差异。
  • 创建序列还有其他方法(拖拽、填充、Apps Script),但 SEQUENCE 提供了最灵活、最自动化的解决方案。

Excel 和 Google Sheets 中的序列函数

如果你曾经手动在电子表格中输入过 1、2、3……这些数字,你就会知道这是世界上最繁琐的任务之一。而当需要输入的不是 10 行而是 500 行或 1000 行时,这种繁琐简直让人无法忍受。幸运的是,Excel 和 Google Sheets 都提供了一个专门用于此的函数:序列(SEQUENCE),它能够使用一个公式批量创建数字列表。

虽然听起来可能有点技术性,但 SEQUENCE 函数其实比看起来要简单得多。只需几个明确定义的参数,您就可以生成完整的有序数字表、递增或递减序列表、关联日期表、会计科目表,甚至可以生成报表所需的示例数据。让我们仔细看看它在 Excel 和 Google Sheets 中的工作原理,并通过实际示例和实用技巧,了解如何充分利用它。

SEQUENCE 函数是什么?它有什么用途?

SEQUENCE 函数用于生成一个连续数字数组,该数组会“溢出”工作表,占据多行和多列。换句话说,您只需在一个单元格中输入公式,它就会自动用连续数字填充整个单元格区域。

在 Excel 和 Google Sheets 中,它的行为非常相似:在这两种情况下,输入公式都会生成一个动态数组。这意味着结果不是一个单一的值,而是一组单元格,这些单元格会从初始单元格开始自动填充。

假设你需要一个表格,数字从 1 到 20,共 4 行 5 列。与其一个个地填充数字,不如直接使用=SEQUENCE(4;5)(在区域设置中使用分号的情况下)或=SEQUENCE(4,5)(在区域设置中使用逗号的情况下),这样就完成了:你将得到一个 4x5 的方框,其中包含从 1 到 20 的数字。

当您想要创建受控数值序列时,此功能尤其有用:向上或向下计数、以 10 为单位跳跃、生成标识符、模拟数据或为 Excel 中的报告、仪表板或数据透视表准备结构。

Excel 和 Google Sheets 中的 SEQUENCE 语法

两种工具中 SEQUENCE 的正式定义非常相似。通用语法如下:

一般语法: =SECUENCIA(filas; columnas; inicio; incremento)

每个论点都有其特定的作用,充分理解它对于掌握其功能并最大限度地发挥其作用至关重要:

部分 描述
filas 强制性表示生成的矩阵的行数。它表示将生成的数字块的高度。
columnas 自选指定数组中的列数。如果留空,则函数只返回一列。
inicio 自选这是序列的起始数字。如果未指定,则默认从 1 开始计数。
incremento 自选这表示序列将前进或后退的幅度。如果省略,则增加 1;如果为负数,则序列将后退。

根据您的地区设置,该函数可能接受逗号或分号作为参数分隔符。在西班牙,Excel 和 Google Sheets 的标准格式是分号:=SEQUENCE(4;5)。但是,如果您粘贴的示例包含逗号且返回错误,只需将逗号替换为分号即可。

关键在于理解行和列决定了数组的大小,而起始值和增量控制着第一个数字的值以及一个数字和下一个数字之间的步长。

SEQUENCE 的基本用法示例

经典示例,帮助理解如何将溢出矩阵“绘制”到表格中。

示例 1:仅包含行的序列

A1 单元格示例:如果您在 A1 单元格中输入以下内容:

快速公式: =SECUENCIA(2)

该公式将返回一个包含2 行 1 列的垂直数组,其内容将按如下方式填充:

A B
1 1
2 2

请注意,如果不指定列,该函数将返回一个包含值 1 和 2 的单列。这种行为通常用于创建从 1 到 n 编号的简单垂直列表。

  经典软件开发方法:传统方法

示例 2:具有多行和多列的矩阵

A1 格:如果您现在在 A1 格写:

矩阵公式: =SECUENCIA(2;3)

该函数将生成一个2 行 3 列的矩阵。A1:C2 单元格区域将如下所示:

A B C
1 1 2 3
2 4 5 6
3

该过程逐行进行,从左到右:先是 A1,然后是 B1、C1,然后是 A2、B2、C2,以此类推。这样会自动填充 1 到 6 的数字,无需手动输入。

示例 3:控制起始点和增量

如果你希望数组不从 1 开始或不以 1 递增,可以指定 `start` 和 `increment` 参数。试试这个:

三级方程式赛车: =SECUENCIA(2;3;3;2)

结果:从A1开始的结果将是:

A B C
1 3 5 7
2 9 11 13
3

该序列从3开始,每次递增2:3、5、7、9、11、13……同样,先填满顶行,再填满底行。

例 4:降序排列

负增量:您还可以使用负增量创建递减的列表。例如:

降序公式: =SECUENCIA(2;3;10;-1)

递减序列:生成一个从 10 开始的递减数字表格:

A B C
1 10 9 8
2 7 6 5
3 4 3 2

利用这个技巧,只需几个步骤即可设置受控倒计时,只需调整行数和列数以包含所有所需的值即可。

垂直列表、水平列表和序列转置

默认情况下,如果省略 columns 参数,SEQUENCE 函数会返回一个垂直列表。也就是说,您将得到一个包含多行的单列列表,行数等于您在第一个参数中指定的行数。这最常用于您想要在单列中显示数字列表的情况。

如果您需要的是一个水平列表(单行),您有两个非常简单的选择:要么将 rows = 1 并控制 columns 的其余大小,要么生成一个垂直列表,然后使用另一个函数将其转置。

简单示例:例如,要创建一个包含 1 到 10 数字的行,您可以使用:

水平公式: =SECUENCIA(1;10)

如果你已经有一个垂直序列,你可以通过在 Excel 中应用TRANSPOSE()函数将其转换为水平序列:这样,你就可以将一个单列列表转换为具有相同值的行。

当您准备表格标题、连续月份或水平编号时,无需复制、粘贴或拖动,这种组合方式非常实用。

Excel 中 SEQUENCE 函数的实际示例

实际应用: Excel 文档展示了 SEQUENCE 与其他函数结合使用的一些非常有趣的用法,旨在快速构建动态数据。

一个经典的例子是,只需使用以下代码即可生成一个4 行 5 列的矩阵:

4×5 方程式赛车: =SECUENCIA(4;5)

使用此公式,您将获得从 1 到 20 的有序数字块,该数字块既可用作测试数据,也可用于构建需要清晰编号的模板或电子表格。

创建一行当前年份的月份

更有趣的用法是将 SEQUENCE 函数与日期和文本格式化函数结合使用。想象一下,您想要一行月份(一月、二月、三月等),它始终自动更新为当前年份,而无需您手动更改任何内容。

微软提出的公式将TEXT、DATE、YEAR、TODAY 和 SEQUENCE以如下方式组合在一起:

=TEXTO(FECHA(AÑO(HOY());SECUENCIA(1;6);1);"mmm")

此公式执行以下操作:首先使用YEAR(TODAY())获取当前年份,然后使用SEQUENCE(1;6 ) 生成1 到 6(1 月到 6 月)的月份数字,接着使用DATE(year; month; day)创建日期,最后使用TEXT(…;"mmm")将其缩写显示。结果是一个包含该年度前六个月的行,并始终更新为当前年份。

生成一个递增的随机整数数组

另一个官方示例将 SEQUENCE 与INTEGER 和 RANDOM结合起来,得到一个递增的随机数数组,可用于生成虚拟数据进行测试:

随机公式: =SECUENCIA(5;6;ENTERO(ALEATORIO()*100);ENTERO(ALEATORIO()*100))

这里使用随机函数来定义起始数字和增量。结果是一个5x6的整数矩阵,这些整数遵循一定的序列,但每次重新计算电子表格时,其值都会改变。

  Guppy:电动汽车的可持续数字化出行

会计代码或标识符列表

如果您从事会计工作或需要生成参考代码,SEQUENCE 可以为您节省大量时间。例如:

配方代码: =SECUENCIA(5;1;1001;1000)

结果值:您将得到一列 5 行,其值如下:1001、2001、3001、4001 和 5001。这是一种非常快速地生成带有固定“间隔”的编号的方法,您可以将其用作成本中心代码、会计科目或客户或项目的标识符。

Google 表格中的序列:典型用法和特点

在 Google 表格中, SEQUENCE函数的工作方式几乎与 Excel 中的对应函数完全相同。它也返回一个从源单元格溢出的数组,并且参数语法也相同:行数、列数、起始值和增量。

简单示例:

配方表: =SEQUENCE(5;1;1;1)

它会生成一列 5 行,从 1 开始,每次递增 1。这与 Excel 中的原理完全相同,只是在 Google Sheets 界面中实现。

Sheets 中 SEQUENCE 的最大优势在于,它允许您动态控制数字序列,并轻松地将它们与工具本身的其他功能或您已经使用 ARRAYFORMULA、ROW 等创建的数组结合起来。

简单的编号方式与拖放技巧

没错,在 Google 表格中,你可以使用拖动填充柄这个经典技巧快速为单元格编号。例如,在 A1 单元格中输入 1,在 A2 单元格中输入 2,选中这两个单元格并向下拖动:表格会自动识别编号模式,并继续添加 3、4、5……

您还可以使用“编辑”→“填充”→“序列”菜单来生成更长的列表,而无需长时间拖动。您可以在此处指定步长(1、2、10 等)和最终限制。

然而,所有这些方法都是静态的:列表生成后,如果插入行、更改结构或需要修改范围,则必须重新进行填充。而使用 SEQUENCE,如果更改数组中的行数或调整公式,编号会自动调整。

ROW、ARRAYFORMULA 和 Apps Script 作为替代方案

在 Google 表格中,还有其他一些常用的编号方法,尤其是在需要动态编号但又不需要 SEQUENCE 函数的全部灵活性时。一种常见的方法是使用ROW()函数,如下所示:

行公式: =FILA()-FILA($A$1)+1

重新计算:其原理是,将该公式粘贴到初始单元格并向下拖动,每一行都会计算自己的订单号。如果在上方插入新行,重新计算的结果将保持一致,数字也会保持正确调整。

如果想更进一步,可以将 ROW 函数与ARRAYFORMULA函数结合使用,用单个公式一次性填充整个区域:

数组公式: =ARRAYFORMULA(FILA(A1:A100)-FILA(A1)+1)

编号 1-100:此功能会在您选择的列中自动创建 1 到 100 的数字,无需拖动。您可以通过更改 A100 来根据需要调整数字大小。

最后,对于高级用户,Google Apps Script 允许您生成具有自定义逻辑的序列;在 Excel 中,您也可以通过编写宏来自动执行任务。例如,您可以编写一个简短的脚本,该脚本仅填充奇数、以不规则的跳跃进行倒数计数,或根据特定条件填充数字范围。

常见问题:单元格合并和数组溢出

对于 Google Sheets 新手来说,最令人困惑的事情之一就是在合并单元格中使用 SEQUENCE 函数。例如,如果您有四组合并单元格,并且希望每组单元格显示一个倒计时数字(1500、1496、1492 等),那么单独使用 SEQUENCE 函数无法很好地处理这种结构。

无论是在 Sheets 还是 Excel 中,动态数组都需要连续无遮挡的空间才能溢出。如果它们尝试扩展的区域包含合并单元格、现有内容或存在限制,则可能会遇到错误或根本看不到预期结果。

在这种情况下,更有效的方法是先在一个干净的、未合并的区域中创建序列,然后使用引用、附加公式,甚至一个小脚本将每个值转储到您感兴趣的合并单元格块中。

此外,在现代 Excel 中,当溢出数组遇到阻塞数据时,通常会显示错误信息#OVERFLOW!。建议您查看这些消息,必要时清除该区域,并确认没有预先存在的数据干扰 SEQUENCE 的结果。

  如何使用 Sparkle 优化 Windows 11 并移除预装软件

相关功能和实用组合

实用组合:在寻求强大的解决方案时,SEQUENCE 函数很少单独使用。它通常与其他动态数组和数据生成函数结合使用。

在 Excel 中, VLOOKUP等函数和其他辅助函数通常与 SEQUENCE 函数配合使用效果非常好:

  • M.UNIT (或您版本中的类似内容),它返回一个 单位矩阵 按您指定的大小排列,对角线上为 1,其余部分为 0。
  • RANDARRAY / MATRIZALEAT能够生成随机数矩阵,可作为模拟或测试的基础。
  • 筛选,它允许您从使用 SEQUENCE 生成的矩阵中仅选择满足特定条件的行或列。
  • 排序和按以下方式排序例如,如果您想要根据另一列的顺序进行编号,则可以重新组织使用 SEQUENCE 生成的数据。
  • 优力士当您生成列表并且只想保留不重复的值时,这非常有用。

这些功能块,以及动态数组和溢出行为的概念,使得无需借助宏或复杂的编程即可构建相当高级的解决方案。

在 Google 表格中,将 SEQUENCE 与ARRAYFORMULA、FILTER、SORT、UNIQUE或TODAY、EOMONTH等日期函数结合使用,可以创建可更新的报告和仪表板,这些报告和仪表板可以根据可用数据生成自己的序列。

与手工编号或使用基本技巧相比,这种方法具有诸多优势。

与传统方法(手写、拖动填充柄或使用填充/序列菜单)相比,序列功能在日常使用中具有几个重要的优势:

一方面,它允许您创建非常长的列表(数百或数千行),而无需滚动或拖动。只需指定行数和列数,矩阵就会立即显示——在处理大量数据时非常方便。

另一方面,使用 SEQUENCE 函数生成的序列易于维护。如果以后需要扩展或缩小范围,只需更改行或列参数,无需手动重新操作。此外,由于它们是公式,因此可以依赖于其他单元格,从而允许您创建根据特定条件自动扩展或缩小的序列。

避免人为错误:另一个值得关注的优点是,SEQUENCE 函数可以避免常见的人为错误,例如忘记数字、意外漏掉一个数字或无意中重复某个数字。通过将此任务委托给该函数,您可以确保升序和降序计数的一致性和连续性。

最后,通过控制起始值和增量,该函数能够完美地适应各种不同的场景:从对报告中的行进行编号,到创建日期时间序列、生成技术代码或设置数据模拟的结构。

节省时间:一旦你开始使用它,你就会注意到,以前需要几分钟(甚至更长时间)才能完成的任务,现在只需编写一个经过深思熟虑的公式即可。

通过在 Excel 和 Google Sheets 中利用 SEQUENCE 函数,并将其与日期、文本、筛选或动态数组函数相结合,电子表格可以完成繁重的工作:编号、创建序列和生成结构化数据只需几秒钟,而且公式易于调整,几乎没有手动错误的风险。

Excel 中的宏
相关文章:
Excel 中的宏:如何自动执行任务并提高工作效率