我们在excel中可以利用OFFSET函数与COUNTA函数的组合,可以创建一个动态的名称。动态名称是名称的高级用法,能够实现对一个未知大小的区域的引用,利用OFFSET函数与COUNTA函数创建动态名称,此用法在Excel的诸多功能中都能发挥强大的威力。
我们在excel中可以利用OFFSET函数与COUNTA函数的组合,可以创建一个动态的名称。动态名称是名称的高级用法,能够实现对一个未知大小的区域的引用,利用OFFSET函数与COUNTA函数创建动态名称,此用法在Excel的诸多功能中都能发挥强大的威力。
在实际工作中,经常会使用如图1所示的表格来连续记录数据,excel表格基本操作的行数会随着记录追加而不断增多。
图1
如果需要创建一个名称来引用C列中的数据,但又不希望这个名称引用到空白单元格,那么就不得不在每次追加记录后都改变名称的引用位置,以适应表格行数的增加。在这种情况下,可以创建动态名称,根据用户追加或删除数据的结果来自动调整引用位置,以达到始终只引用非空白单元格的效果。
创建动态名称的方法如下。
1、单击菜单“插入”→“名称”→“定义”(或者按<Ctrl+F3>组合键)。
2、在“定义名称”对话框中,在“在当前工作簿中的名称”文本框中输入“Data”,在“引用位置”文本框中输入公式:
=OFFSET(Sheet1!$C$4,,,COUNTA(Sheet1!$C:$C) ‑1)如图2所示。
图
3、单击“确定”按钮。
以上公式先计算B列中除了列标题以外的非空白单元格的数量,然后以C4单元格(首个数据单元格)为基准开始定位,定位的行数等于刚才计算出来的数量。
下面可以在C列以外的单元格中通过计算来验证此名称的引用是否正确,比如在B1中输入公式:=SUM(Data),如图3所示。
图2
如果继续追回记录,名称“Data”的引用位置会自动发生改变,B2中的计算结果能够体现这一点,如图4所示。
图3
注意:以上公式只能正确计算不间断的连续数据,如果表格中的数据有空白单元格,那么动态名称的引用位置将发生错误。