在Excel表格里面,一些单元格常被我们填充一些颜色来进行突出显示。对于这些已经填充颜色的单元格,我们要统计某一种颜色的单元格数量时,可以使用到VBA程序来对它进行计数,然后将结果显示出来。

工具/原料

  • Excel 2010

方法/步骤

  1. 1

    打开Excel表格,点击【开发工具】,【Bisual Basic】。(如果Excel表格上面没有显示出【开发工具】,可以按照第二、三步进行操作)

  2. 2

    点击【文件】,【选项】。

  3. 3

    点击【自定义功能区】,在右侧将“开发工具”勾上。

  4. 4

    在“Excel 选项”对话框里面点击【信任中心】,【信任中心设置】。(主要是查看Excel表格上面是否已经启用了宏)

  5. 5

    点击【宏设置】,【启用所有宏】,之后点击【确定】,保存Excel表格后将它关闭、重新打开。(如果Excel表格上面已经启用宏功能,可以忽略第四、五步)

  6. 6

    在VBA工程资源管理器里面的“VBAProject(使用VBA统计带颜色单元格数量.xlsx)”上面单击右键,选择【插入】,【模块】。("使用VBA统计带颜色单元格数量.xlsx"是当前工作薄的名称)

  7. 7

    双击打开“模块1”,之后在代码窗口里面输入以下代码:

    Sub Count()

    Dim a, b, c, d, i, j As Long   '定义数据类型

    a = Worksheets("Sheet1").Range("A3").Interior.Color   '将A3单元格的颜色值赋给a

    b = Worksheets("Sheet1").Range("D4").Interior.Color   '将D4单元格的颜色值赋给b

    c = 0    '对c进行初始化赋值

    d = 0    '对d进行初始化赋值

    For i = 2 To 100    '从第2行到100行进行循环执行

    For j = 1 To 9      '从第1列到第9列进行循环执行

                        '查找的范围相当于A2:I100

    If Worksheets("Sheet1").Cells(i, j).Interior.Color = a Then

    c = c + 1    '如果找到的单元格颜色与A3单元格相同,则加1

    Worksheets("Sheet1").Range("J3") = c  '将结果输出到Sheet1表格的J3单元格

    End If

    If Worksheets("Sheet1").Cells(i, j).Interior.Color = b Then

    d = d + 1    '如果找到的单元格颜色与D4单元格相同,则加1

    Worksheets("Sheet1").Range("J5") = d  '将结果输出到Sheet1表格的J3单元格

    End If

    Next

    Next

    End Sub

  8. 8

    点击“运行”图标或按下【F5】键,即可计算出带有填充颜色的单元格的数量。

  9. 9

    如果Excel表格想要继续保留VBA程序的功能,则将它另存为”启用宏的工作薄“,即:点击【文件】,【另存为】,保存类型里面选择”Excel 启用宏的工作薄“。

    END

注意事项

  • Excel表格里面需要启用宏功能,之后才能使用VBA程序进行计算。
  • 上面的程序里面可以修改指定的单元格颜色、范围进行变通使用。
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。