作者:Excel Home 来源:《Excel实战技巧精粹》
发表于:2008年9月26日

利用OFFSET函数与COUNTA函数的组合,可以创建一个动态的名称。动态名称是名称的高级用法,能够实现对一个未知大小的区域的引用,此用法在Excel的诸多功能中都能发挥强大的威力。

在实际工作中,经常会使用如图82-1所示的表格来连续记录数据,表格的行数会随着记录追加而不断增多。

图82-1 不断追加记录的表格

如果需要创建一个名称来引用C列中的数据,但又不希望这个名称引用到空白单元格,那么就不得不在每次追加记录后都改变名称的引用位置,以适应表格行数的增加。在这种情况下,可以创建动态名称,根据用户追加或删除数据的结果来自动调整引用位置,以达到始终只引用非空白单元格的效果。

创建动态名称的方法如下。

单击菜单“插入”→“名称”→“定义”(或者按<Ctrl+F3>组合键)。

在“定义名称”对话框中,在“在当前工作簿中的名称”文本框中输入“Data”,在“引用位置”文本框中输入公式:

=OFFSET(Sheet1!$C$4,,,COUNTA(Sheet1!$C:$C) -1)

如图82-2所示。

图82-2 创建动态名称

单击“确定”按钮。

以上公式先计算B列中除了列标题以外的非空白单元格的数量,然后以C4单元格(首个数据单元格)为基准开始定位,定位的行数等于刚才计算出来的数量。

下面可以在C列以外的单元格中通过计算来验证此名称的引用是否正确,比如在B1中输入公式:=SUM(Data),如图82-3所示。

图82-3 使用动态名称进行计算

如果继续追回记录,名称“Data”的引用位置会自动发生改变,B2中的计算结果能够体现这一点,如图82-4所示。

图82-4 动态名称的引用位置自动适应表格的变化

注意:

以上公式只能正确计算不间断的连续数据,如果表格中的数据有空白单元格,那么动态名称的引用位置将发生错误。

声明:本站所有文章均出自互联网,只为学习之用;如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。