行函数ROW()
ROW函数是用来确定光标的当前行位置或者指定单元格行位置的函数
语法:=row()
案例:求C14单元格所在的行位置
ROW函数
ROW函数用于返回引用的行号。该函数与COLUMN函数分别返回给定的行号和列标。
函数语法: ROW(reference)
ROW函数可以得到一个单元格引用的行号,在任意单元格输入公式 = ROW(A1) ,向 下填充,即可得到从1开始递增的数列。
ROW函数的参数有三种方式:
(1) 使用单元格: 会得到该单元格的行号
(2) 使用一个区域,这时会得到一组数字,例如,在任意单元格输入公式
=ROW(A3:A10) ,只显示3,利用F9键就能看到这一组数字。注意要使用数组公式。例如当前公式在按下Ctrl+Shift+Enter 键值后会返回一个 3,4,5 这样的一个常量数据
(3) 省略参数: 会得到公式坐在单元格的行号
示例1:生成批量序号
巧用ROW() 函数的返回值,可以实现对批量递增序号的填充,如要输入1000条记录或者更多的记录的序号,则可以用ROW函数建立输入;
(1) 选中1000个单元格,在左上角输入 A2:A1000
(2)输入ROW()函数
(3)按下 Ctrl + Enter 组合键,即可生成1000个序
示例2:让序号自动重复三次
搭配使用ROW与INT函数可以批量获取自动重复一行到编号,如编号1重复3行后再自动进行编号2,如下图:
选中A2单元格,在公式编辑栏中输入公式:
="PSN_"&INT((ROW(A1)-1)/3)+1
按Enter键得到第一个序号,将A2单元格的公式向下填充
公式解析:
(1) "PSN_"&INT((ROW(A1)-1)/3)+1,想重复几遍就设置此值为几。
(2) 公式的计算原理: 当公式向下复制到A4单元格中时,ROW()的取值以此是2,3,4,它们的行号减1后再除以3,用INT函数取整的结果都为0,进行加1处理,得到的是连续3个1。当公式复制到A5单元格时,ROW()的取值为5,5-1后再除以3,INT函数取整结果为1,进行加1处理,得到数字2,。随着公式不断向下复制,其原理以此类推。
示例3:提取季度合计值计算全年销售额
示例: 计算前面销售额合计值,只需要把一季度到四季度合计相加即可!
=SUM(IF(MOD(ROW($A1:$A17),4)=0,$B2:$B17))
按 Ctrl+Shift+Enter组合键,即可 计算出全年销售额的合计值。
公式解析:
(1)=SUM(IF(MOD(ROW($A1:$A17),4)=0,$B2:$B17)) 返回单元格A1:A17单元格区域中隔行的行号,返回的是一个数组。
(2) =SUM(IF(MOD(ROW($A1:$A17),4)=0,$B2:$B17)) 返回步骤一中各值与4相除后的余数是否为0。
我们看下调试后的值,按F9查看数据
=SUM(IF({FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE},$B2:$B17))
那么 IF({FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE},$B2:$B17) 返回值是什么呢?
对于IF({1;0;......}是对应行的选择。即得到以下结果:
(3)将步骤二返回数组中结果进值求和
发表评论