excel公式ROW($1:$11)-1是什么意思?绝对引用与序列生成教程
在excel的高级公式或数组公式中,ROW($1:$11)-1 是一个非常经典的组合。这个公式的核心作用是生成一个从0到10的连续数字序列(即 {0;1;2;3;4;5;6;7;8;9;10})。

理解这个公式需要拆解两个核心概念:ROW 函数的数组特性以及符号 $ 的绝对引用功能。
一、 符号$的含义:绝对引用
在excel中,$ 符号被称为绝对引用符。它的存在是为了“锁死”单元格或行的位置。
1、锁定行号:在 $1:$11 中,$ 出现在数字前面,意味着不管你将这个公式复制、下拉填充到哪个单元格,它引用的范围永远固定在“第1行到第11行”,不会变成 2:12 或 3:13。
2、对比区别:如果写成 ROW(1:11),当你把公式下拉一行,它会自动变成 ROW(2:12)。在构造特定序列时,我们通常不希望这个范围随位置变动,必须加 $。
二、ROW($1:$11)-1的运算逻辑
这个公式可以拆解为以下三个步骤:
1、ROW($1:$11):ROW 函数的作用是返回引用的行号。因为引用的范围是第1到第11行,它会生成一组数组数字:{1;2;3;4;5;6;7;8;9;10;11}。
2、减1运算:excel会对数组里的每一个数字分别减去1。
◆ 1-1=0
◆ 2-1=1
◆ ...
◆ 11-1=10
3、最终结果:公式最终向系统提供一个内存数组 {0;1;2;3;4;5;6;7;8;9;10}。
三、 为什么要这么写?
这种写法通常出现在 INDEX、SUMPRODUCT 或 VLOOKUP 的嵌套公式中,用于处理“偏移量”或“提取特定位置的数据”。
1、构造索引:比如你需要从某个位置开始,提取往后数第0、1、2... 个数据。
2、配合MID函数提取字符:如提取身份证号里的每一位数字,需要一个从1开始的递增序列作为 MID 的第二个参数。
补充说明
在使用此类数组公式时,如果你的excel版本较老(2019以前的版本),直接在单元格输入可能只显示一个 0。此时需要按下 Ctrl + Shift + Enter 组合键激活数组运算。
在最新的excel(Office 365)中,系统支持“动态数组”,你会直接看到公式下方溢出一串0到10的数字。如果你在引用中看到 $1:$11 这种整行引用,虽然方便,但如果表格极其庞大,过多的整行引用可能会稍微影响计算速度。如果是为了生成序列,现在更推荐使用 SEQUENCE(11,1,0,1) 这个专门的序列函数。






