如何在 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 列中的每个剩余单元格中,公式将自动计算具有特定背景颜色的每个单元格的平均值:

Excel 按颜色计算平均值

例如,我们可以看到浅绿色背景的单元格的平均值是17.67

我们可以通过手动平均每个具有浅绿色背景的单元格来确认这一点:

浅绿色背景上的细胞平均值:(20 + 13 + 20) / 3 = 17.67

这对应于我们的公式计算出的值。

其他资源

以下教程介绍了如何在 Excel 中执行其他常见操作:

Excel中如何计算分组平均值
如何在Excel中计算每月平均值
如何在 Excel 中按一周中的某一天计算平均值

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注