如何在 excel 中按颜色求平均值(分步示例)
通常,您可能希望根据颜色在 Excel 中求平均值。
例如,假设我们有以下数据集,并希望根据单元格颜色计算平均单元格值:
最简单的方法是在 Excel 中编写 VBA 代码。
如果您不熟悉 VBA,这可能看起来令人生畏,但该过程很简单,下面的分步示例准确展示了如何执行此操作。
第 1 步:输入数据
首先,将数据值输入Excel:
步骤 2:在 Excel 中显示“开发人员”选项卡
接下来,我们需要确保“开发人员”选项卡在 Excel 顶部功能区中可见。
为此,请单击“文件”选项卡,然后单击“选项” ,然后单击“自定义功能区” 。
在标题为Main Tabs 的部分下,选中Developer旁边的框,然后单击OK :
步骤 3:使用 VBA 创建宏
接下来,单击顶部功能区的“开发人员”选项卡,然后单击Visual Basic图标:
接下来,单击“插入”选项卡,然后从下拉菜单中单击“模块” :
接下来,将以下代码粘贴到模块的代码编辑器中:
Function AvgCellsByColor(CellRange As Range, CellColor As Range) Dim CellColorValue As Integer Dim RunningAvg As Long Dim RunningSum As Long Dim RunningCount As Long CellColorValue = CellColor.Interior.ColorIndex Set i = CellRange For Each i In CellRange If i.Interior.ColorIndex = CellColorValue Then RunningSum = RunningSum + i.Value RunningCount = RunningCount + 1 End If Next i AvgCellsByColor = RunningSum / RunningCount End Function
以下屏幕截图显示了如何执行此操作:
然后关闭VB编辑器。
步骤 4:使用宏按颜色平均
最后,我们可以使用我们创建的宏根据颜色对单元格值进行平均。
首先,使用要计算平均值的颜色填充单元格C2:C4 。
然后在单元格D2中键入以下公式:
=AvgCellsByColor( $A$2:$A$11 , C2 )
将此公式拖动并填充到 D 列中的每个剩余单元格中,公式将自动计算具有特定背景颜色的每个单元格的平均值:
例如,我们可以看到浅绿色背景的单元格的平均值是17.67 。
我们可以通过手动平均每个具有浅绿色背景的单元格来确认这一点:
浅绿色背景上的细胞平均值:(20 + 13 + 20) / 3 = 17.67 。
这对应于我们的公式计算出的值。
其他资源
以下教程介绍了如何在 Excel 中执行其他常见操作: