Excel 的 SEQUENCE 函数:快速创建数字序列
Excel 的 SEQUENCE 函数能够瞬间创建一系列数字序列。它允许你定义序列的形状、数值个数以及每个数字之间的增量,并且可以与其他 Excel 函数结合使用。
SEQUENCE 函数仅在 Excel 365 和 Excel 2021 或更高版本中受支持。
SEQUENCE 函数有四个参数:
<code>=SEQUENCE(rows,cols,start,step)</code>
其中:
rows
(必填) 序列在垂直方向(向下)延伸的行数。cols
(可选) 序列在水平方向(向右)延伸的列数。start
(可选) 序列的起始数字。step
(可选) 序列中每个值之间的增量。rows
和 cols
参数(结果数组的大小)必须是整数(或输出整数的公式),而 start
和 step
参数(序列的起始数字和增量)可以是整数或小数。如果 step
参数为 0,结果将重复相同的数字,因为你告诉 Excel 不要在数组中的每个值之间添加任何增量。
如果你选择省略任何可选参数(cols
、start
或 step
),它们将默认为 1。例如,输入:
<code>=SEQUENCE(2,,10,3)</code>
将返回一个只有一列的序列,因为 cols
参数缺失。
SEQUENCE 是一个动态数组公式,这意味着它可以生成溢出数组。换句话说,尽管公式只输入到一个单元格中,但如果 rows
或 cols
参数大于 1,结果将溢出到多个单元格。
在展示 SEQUENCE 函数的一些变体和实际应用之前,这里有一个简单的示例来演示其工作原理。
在单元格 A1 中,我输入了:
<code>=SEQUENCE(3,5,10,5)</code>
这意味着序列高度为三行,宽度为五列。序列以数字 10 开始,每个后续数字比前一个数字增加 5。
在上面的示例中,你可以看到序列首先横向填充列,然后向下填充行。但是,通过将 SEQUENCE 函数嵌入到 TRANSPOSE 函数中,你可以强制 Excel 先向下填充行,然后横向填充列。
这里,我输入了与上述示例相同的公式,但是我还将其嵌入到 TRANSPOSE 函数中。
<code>=TRANSPOSE(SEQUENCE(3,5,10,5))</code>
结果,Excel 颠倒了语法中的 rows
和 cols
参数,这意味着“3”现在表示列数,“5”现在表示行数。你还可以看到数字先向下填充,然后向右填充。
如果你想创建一个罗马数字序列(I、II、III、IV)而不是阿拉伯数字序列(1、2、3、4),你需要将 SEQUENCE 公式嵌入到 ROMAN 函数中。
使用与上述示例相同的参数,我在单元格 A1 中输入:
<code>=SEQUENCE(rows,cols,start,step)</code>
产生以下结果:
更进一步,假设我想让罗马数字是小写的。在这种情况下,我会将整个公式嵌入到 LOWER 函数中。
<code>=SEQUENCE(2,,10,3)</code>
SEQUENCE 函数的一个更实际的用途是生成一系列日期。在下面的示例中,我想创建一个报告,其中包含每个人的每周利润,从 3 月 1 日星期五开始,每个星期五持续 20 周。
为此,我在 B2 单元格中输入:
<code>=SEQUENCE(3,5,10,5)</code>
因为我希望日期横跨前一行 20 列,从 3 月 1 日星期五开始,每个值递增 7 天。
在将日期添加到单元格之前,尤其是在使用公式创建日期时,你应该首先在功能区的“开始”选项卡的“数字”组中将单元格的数字格式更改为“日期”。否则,Excel 可能会返回序列号而不是日期。
在这个例子中,我有一系列需要编号的任务。我希望 Excel 在我添加新任务时自动添加另一个数字(或者,同样地,在我完成并删除任务时删除一个数字)。
为此,我在单元格 A2 中输入:
<code>=TRANSPOSE(SEQUENCE(3,5,10,5))</code>
序列填充的行数现在取决于 B 列中包含文本的单元格数(感谢 COUNTA 函数),我在公式末尾添加了“-1”,以便 COUNTA 计算忽略标题行。
你还会注意到,我只在 SEQUENCE 公式中指定了 rows
参数(行数),因为省略所有其他参数会将它们默认为 1,这正是我在这个示例中想要的。换句话说,我希望结果只占据一列,编号从 1 开始,并且每次递增 1。
现在,当我向 B 列的列表中添加项目时,A 列中的编号会自动更新。
在 Excel 中使用 SEQUENCE 函数时,需要注意以下三个注意事项:
SEQUENCE 函数的替代方法是 Excel 的填充柄,你可以单击并拖动它来继续你已经开始的序列:
但是,我更喜欢使用 SEQUENCE 函数而不是填充柄有以下几个原因:
如果你将 SEQUENCE 与易失性函数(如 DATE)一起使用,这可能会导致你的 Excel 工作簿速度大大降低,尤其是在你的电子表格中已经有很多数据的情况下。因此,尽量限制你使用的易失性函数的数量,以确保你的 Excel 表格快速有效地工作。
以上是如何在Excel中使用序列函数的详细内容。更多信息请关注PHP中文网其他相关文章!