在Excel表格中如果要对不同的单元格区域汇总,大部分人首先都会想到使用窗体控件来控制单元格区域的选择。这篇文章为朋友们分享使用条件格式和函数制作对所选的单元格区域实时更新汇总的方法。

一.动态效果演示:

话不多少,首先上一张动态效果图感受一下这个操作能实现的功能。


二.操作方法及特点:


1.选择日期或日期所在列的任意单元格双击,A13单元格的内容和B13单元格的销量就会实时更新。

2.选择求和区域后,该区域会自动填充颜色、突出显示。

3.如果有新的品种销量,只要在下方的空白区域录入数据后会实时更新。

三.操作方法:

1.制作求和区域信息提示:

(1)在A13单元格输入下方的公式。

="1日到"& INDIRECT((CHAR(64+CELL("col"))&1)) & "销量为:"

(2)公式解析:

CELL("col")返回的双击单元格的列数;例如,双击B2单元格则返回数值2。

②(CHAR(64+CELL("col"))的功能是将双击单元的列数转化成字母的形式表达;例如,双击B2单元格返回字母B。

③INDIRECT((CHAR(64+CELL("col"))&1)) 返回对②返回所在列的第一行的单元的引用;例如,双击B2单元格、则引用B1单元的内容“1日”。

④最后用两个连接符连接两个文本提示,就制作好了对求和信息的提示信息。

2.对所选区域求和:

(1)在C13单元格输入下方的公式。

=SUM(OFFSET($A$1,1,1,COUNTA($A:$A)-1,CELL("col")-1))

(2)公式解析:

①COUNTA($A:$A)返回的是A列非空单元格的个数,COUNTA($A:$A)-1是计算求和区域的行数。

②CELL("col")解释同上,CELL("col")-1计算的是求和区域的行数。

③OFFSET($A$1,1,1,COUNTA($A:$A)-1,CELL("col")-1)返回的是对求和区域的引用;A1作为参考单元格;第二和第三个参数都设置为1作为OFFSET函数偏移的行数和列数。

④如果将B2单元格作为参考单元格,则第二和第三个参数应该设置为0;应该根据参考单元格确定偏移函数和列数。

⑤最后用SUM函数对所选区域求和。

⑥因为offset函数引用的是数组,所以在确定公式时要按住Ctrl+Shift+Enter三键。

⑦使用COUNTA函数可以确保有新的品种销量增加时,能够自动更新求和区域。

3.使用条件格式突出显示求和区域:

(1)操作步骤:

选择要设置条件格式的单元格区域→开始→条件格式→新建规则→使用公式确定要设置格式的单元格→输入下方的公式→格式→选择一个填充颜色→确定→再次点击确定。

=AND(COLUMN(B2)<=CELL("col"),B2<>"")

(2)公式解析:

①COLUMN(B2)<=CELL("col")判断所选区域单元格的列数是否小于等于所选单元的列数;如果小于等于返回逻辑值TRUE,否则返回FALSE。

②B2<>"",判断所选区域单元的时候为空白。不等于空白返回逻辑值TRUE,否则返回FALSE。

③最后用AND函数判断是否同时满足①和②所述的条件,如果满足填充颜色。

(3)说明:

①B2是销售数据的最左上角的单元格;朋友们在引用的时候要根据实际情况修改、注意一定要相对引用。

②选择的区域要比销量信息的区域大;这样可以确保在所选区域新增销量信息时,如果满足条件会填充颜色突出显示。

总结,这个功能的实现主要用到条件格式和cell函数。