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

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

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

步骤1:切换到“公式”选项卡,然后单击“定义的名称”组中的“定义名称”按钮,打开“新建名称”对话框。

步骤2:在打开的“新建名称”对话框中,在“名称”后面的输入框中输入“Data”,在“引用位置”文本框中输入公式“=offset(Sheet1!$C$4,,,counta(Sheet1!$C:$C)-1)”,如图8-19所示。

Excel 创建动态名称-Excel22

图8-18 不断追加记录的表格

Excel 创建动态名称-Excel22

图8-19 创建动态名称

步骤3:单击“确定”按钮,即可完成动态名称的创建。

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

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

如果继续追加记录,名称“Data”的引用区域就会自动发生改变,B1中的计算结果能够体现这一点,如图8-21所示。

Excel 创建动态名称-Excel22

图8-20 使用动态名称进行计算

Excel 创建动态名称-Excel22

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