假如我对自己每天的花销进行记录,时间一长,我们的报表就会变得很长,所以当我们想看到今天的花销的时候,我们就可以使用OFFSET函数的引用功能。
OFFSET函数是返回对单元格或单元格区域中指定行数和列数的区域的引用。 返回的引用可以是单个单元格或单元格区域。 可以指定要返回的行数和列数。
在Excel2013版本的帮助中显示,OFFSET的语法是:OFFSET(reference, rows, cols, [height], [width])。第一个参数为参考点,第二个参数为偏移的行数,第三个为偏移的列数,第四个参数和第五个参数则不是必须填写的,其中height代表需要返回的引用的行高,width代表需要返回的引用的列宽。
这里要提到的是,2007、2010和2013版本中有一个Bug。在offset的帮助信息中是这么说的:Height 必须为正数,Width 必须为正数。经过笔者验证,这是错误的信息,高度和宽度这部分,即使填了负值也是有意义的。
在前面的那张图片中,可能有的人会说,那我直接输入“=offset(A1,8,0)”就可以了啊,可是这样的话,我们再次输入一个新的花销的时候难道还有到上面把行的移动数再改变么?
我们都知道这种方法肯定是不可取的,因为它不会动态的引入最后一行的数据,那么我们要怎么计算出第一行与最后一行之间的行差呢?这个时候就需要介绍一下“COUNT”函数大家族中的“COUNTA”函数了。
COUNTA 函数计算范围中不为空的单元格的个数。其函数形式为:COUNTA(value1, [value2], ...)。其中“value1”参数为必需, 表示要计数的值的第一个参数。“ value2, ...”则为可选,表示要计数的值的其他参数,在2013版本中最多可包含 255 个参数。
那么,我们首先可以写出关于计算A列非空单元格的函数,“=counta(A:A)",回车后返回的便会是A列非空单元格的数目,其中函数中的”A:A“代表的是整个A列。
那么我们可以这样写”=OFFSET(A1,COUNTA(A:A)-1,0)“。就可以对最后一行进行动态引用了!
这里可能会有读者产生疑问,为什么计算出非空单元格后还要”再减一”呢?这是因为OFFSET函数的偏移,是以参考点的下一个单元格进行偏移,所以是从A2单元格开始偏移量的计算。而COUNTA 函数则是对整个A列非空单元格的计数,两者之间相差一,所以需要”再减一”。
当然,我们也可以这样写"=OFFSET(A1,COUNTA(A:A)-1,0,1,1)",最后面的"1,1"表示引用的区域大小是一行一列,也就是一个单元格。
那么金额那一部分的引用就是”=OFFSET(B1,COUNTA(B:B)-1,0)“。另外,大家需要注意的是,即使某天花销为0,在上式的条件下,我们也需要在单元格内输入0,否则会因为数列中出现了空格,而对引用的位置产生了错误计算。
还有要提到的就是,很多人在用OFFSET函数引用之后,日期部分却变成了一个数值,这是由于单元格格式出了问题,这是只需要右键选择“设置单元格格式”,选择为“日期格式”,最后出现的结果就会是正确的日期了!
1.《(excel如何引用单元格的值)excel怎么引用固定单元格值》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《(excel如何引用单元格的值)excel怎么引用固定单元格值》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/keji/3235579.html