EXCEL 请教INDIRECT函数!
这公式是求一列中最后20行的和值,=SUM(INDIRECT("r[-20]c:r[-1]c",0)),indirect函数我也会一点,只是不明白"r[-20]c:r[-...
这公式是求一列中最后20行的和值,=SUM(INDIRECT("r[-20]c:r[-1]c",0)),indirect函数我也会一点,只是不明白 "r[-20]c:r[-1]c,0" 这部份是怎样运算的,这部份会自动根据当前列返回20行的区域,如把公式放在A列,则自动返回$A$1:$A$20,放在B列则返回$B$1:$B$20,不明白为什么能这样。请高人解释一下,谢谢。
=SUM(INDIRECT("r"&IF(COUNTA(A:A)=0,1,COUNTA(A:A))&"c"&COLUMN(A1)&":r"&IF(COUNTA(A:A)-19<1,1,COUNTA(A:A)-19)&"c"&COLUMN(A1),0)) 这是我改良出来的公式,可以正常使用了,谢谢各位的回答! 展开
=SUM(INDIRECT("r"&IF(COUNTA(A:A)=0,1,COUNTA(A:A))&"c"&COLUMN(A1)&":r"&IF(COUNTA(A:A)-19<1,1,COUNTA(A:A)-19)&"c"&COLUMN(A1),0)) 这是我改良出来的公式,可以正常使用了,谢谢各位的回答! 展开
4个回答
展开全部
r[-20]c:r[-1]c是一种单元格表示方式,R表示的是行,而C表示的是列,R20就表示第20行,R1就表示第1行,这里的R-20:R-1表示的是从公式的单元格向上20行至向上1行,即如果你的公司输入在21行,反映出来的就是第1行至第20行,完整的写法应该是R[-20]C0:R[-1]C0,简写为R[-20]C:R[-1]C,如果你在C后面加了数字那就不是一列了而是一个区域,至于"r[-20]c:r[-1]c,0" 后面的这个0是FLASE的表现形式,用来定义你前面的格式。至于INDIRECT就是一个引用,这样你连起来就能理解了,INDIRECT引用了公式所在行的上一行至上第20行。
更多追问追答
追问
再请教一下,要是在不足20行的情况下用这公式会报措,该如何修改一下?能不能加个判断,在不足20行时,如果只有18行,它也能自动计算,请不要说是每次行数有变动都要自己手动去修改公式中的那个行数啊。,那样累啊!谢谢!
追答
=SUM(OFFSET(A1,0,0,ROW()-1,1)),你用这个公式会比你那个更简单,你那个公式是很难达到那种效果的,这个里面的A1是引用的单元格,如果你不需要从第一行开始计算的话,就改第一个0为ROW()-X.X=你需要开始计算的行号
展开全部
"r[-20]c:r[-1]c"——主要是以R1C1形式引用。
"r[-20]c:r[-1]c"中的
r[-20]c:本表当前单元格所在列的倒数20个单元格,如果是03版,应该是65536-20=65526
r[-1]c:本表当前单元格所在列的上一个单元格
正如你说的想返回20行的区域:"r[1]c:r[20]c" ——例如当前单元格为A1,则表示A2:A21区域
如果几列几行表达为:"r[1]c[1]:r[20]c[3]"——例如当前单元格为A1,则表示B2:D21区域
"r[-20]c:r[-1]c"中的
r[-20]c:本表当前单元格所在列的倒数20个单元格,如果是03版,应该是65536-20=65526
r[-1]c:本表当前单元格所在列的上一个单元格
正如你说的想返回20行的区域:"r[1]c:r[20]c" ——例如当前单元格为A1,则表示A2:A21区域
如果几列几行表达为:"r[1]c[1]:r[20]c[3]"——例如当前单元格为A1,则表示B2:D21区域
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-09-07 · 知道合伙人软件行家
关注
展开全部
这是个公式R1C1样式
R代表行,C代表列
r[-20]c
指列相对引用.行引用当前单元格往上数的第20个单元格
r[-1]c
指列相对引用.行引用当前单元格往上数的第1个单元格(即当前单元格上方的单元格)
r[-20]c:r[-1]c
就构成了一个动态的数据区域,不论放在哪一行,都会统计前面20个单元格的和
R代表行,C代表列
r[-20]c
指列相对引用.行引用当前单元格往上数的第20个单元格
r[-1]c
指列相对引用.行引用当前单元格往上数的第1个单元格(即当前单元格上方的单元格)
r[-20]c:r[-1]c
就构成了一个动态的数据区域,不论放在哪一行,都会统计前面20个单元格的和
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
学习了!!
我的理解是:
"r[-20]c:r[-1]c,0"中的0表示引用式样为R1C1;
比如:=INDIRECT("R1C1",0)表示引用A1单元格.
不难理解,INDIRECT("RC",0)表示本单元格,
"r[-20]c:r[-1]c,0"表示表示本单元格的行标减20至本单元格的行标减1这个区域.
我的理解是:
"r[-20]c:r[-1]c,0"中的0表示引用式样为R1C1;
比如:=INDIRECT("R1C1",0)表示引用A1单元格.
不难理解,INDIRECT("RC",0)表示本单元格,
"r[-20]c:r[-1]c,0"表示表示本单元格的行标减20至本单元格的行标减1这个区域.
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询