绝大多数excel数组公式中,都可以看到row函数的身影,那么row函数到底起到什么作用呢?我们先从它的基本用法说起。
Row函数,返回一个引用的行号。
row() 返回公式所在行的行数,如:在第5行输入=row() 公式返回值 5
row(单元格地址) 返回单元格所在的行数, 如:Row(b6) 返回B6单元格所在的行6
row(开始行数:终止行数) 返回引用行的行数,结果是一组数。如:Row(1:3) 返回第1:3行所在的行数{1;2;3},由于在单元格中只能显示一个值,所以显示的结果是1
生成这样的序号有用吗?当然有!
【例1】求1+2+3+4+5 ...+100=?
公式{=sum(row(1:100))}
公式说明:
用row函数生成1~100的序号,然后用sum求和
. 由于是数组运算,需要在公式表达式最后按ctrl+shift+enter键确认输入。
【例2】截取字符串中最前面的数字,假设A1单元格中值为 353.54优质
公式:
=LOOKUP(9^9,--LEFT(A1,ROW(1:99)))
公式说明:
row(1:99) 生成{1 ;2;3;4;5;6...99} 的序号,共99个数字
--Left(A1,ROW(1:99),分别从左边截取1个,2个,3个.....99个字符, 99是该字符可能的最大长度,如果字符最长20个,也可以用row(1:20)。由于截取后是文本,所以需要用--把文本型数字转换成数值,把纯文本转换成错误值。{3;35;353;#VALUE!;#VALUE!;#V.......;#VALUE!}
Loookup(9^9,) 用一个足够大的数在截取后的数字中进行查找,返回最后一个数字。
由于lookup可以支持数组运算,所以公式不需要按三键输入。
总结:row() 函数的主要作用是生成一组序号,在后利用这组序号对另一个或一组值进行多次处理。
联系客服