最新如何在EXCEL中实现按单元格背景颜色求和或计数

最新如何在EXCEL中实现按单元格背景颜色求和或计数
最新如何在EXCEL中实现按单元格背景颜色求和或计数

EXCEL进阶

如何在EXCEL中实现按单元格背景颜色求和或计数我们在EXCEL工作表中,如果要对多个单元格的数值进行求和,一般都会用到SUM函数,SUM 函数的计算结果可以根据各个对象单元格数值的变化而发生变化,满足了大多数EXCLE用户的需求。但是,在SUM函数中,当被求和单元格的位置发生变化时,SUM函数是无法进行自动求和的,这就需要用到SUM COLOR函数,它能根据单元格的背景颜色进行求和,无论是单元格的位置发生了变化还是单元格数值发生变化,只要被求和单元格的背景颜色一致,SUM COLOR函数都可以实现对她们的求和。如果要对相同颜色单元格进行计数,也可以运用COUNTCOLOR函数实现。

可是,EXCLE本身并没有这两项功能,我们必须要通过宏与VBA才能实现,方法很简单,以EXCEL2003为例:

首先,打开你的EXCEL2003工作表,点工具--宏--Visual Basic 编辑器,得到以下界面:

在界面左上角Sheet1点右键--插入--模块,打开以下编辑界面:

然后在打开的编辑框中输入以下代码:(有需要的朋友可以找作者索取此代码直接粘贴即可)

Function CountColor(col As Range, countrange As Range) As Integer Dim icell As Range

Application.Volatile

For Each icell In countrange

If icell.Interior.ColorIndex = col.Interior.ColorIndex Then

CountColor = CountColor + 1

End If

Next icell

End Function

Function SumColor(col As Range, sumrange As Range) As Integer

Dim icell As Range

Application.Volatile

For Each icell In sumrange

If icell.Interior.ColorIndex = col.Interior.ColorIndex Then

SumColor = Application.Sum(icell) + SumColor

End If

Next icell

End Function

然后关闭此界面,返回到工作表。点击工具--宏--安全性--安全级--低--确定。保存并关闭工作表,再打开工作表就可以使用SUM COLOR和COUNTCOLOR函数了。

现在我们再来根据单元格的背景颜色进行求和与计数,方法如下:

按颜色求和公式为:sumcolor(颜色示列格,求和区域或列);

按颜色计数公式为: countcolor(颜色示列格,求和区域或列)。

如下图,

要对A1到A11这个区域内的蓝色格进行求和,在E1单元格中编辑公式=sumcolor(D1,$A$1:$A$11);

要对A1到A11这个区域内的蓝色格进行计数,在E6单元格中编辑公式=countcolor(D6,$A$1:$A$11),一定要在半角模式下编辑公式哦!

如果A1到A11这个区域内单元格背景颜色发生变化,只需双击E1单元格,再按回车键,E列单元格中的数值就会随着颜色的改变而变化过来。如下图:

请注意,只有在EXCEL表中对宏进行设置之后,才能使用SUMCOLOR和COUNTCOLOR函数,如果不做任何宏设置,直接输入这两个函数,EXCEL是无法识别的。

希望能够帮助到对这方面有需求的同事们!

芜湖购物人力资源部方琴 2012-7-17

相关主题
相关文档
最新文档