广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    Excel表格上面使用VBA程序统计某一着色单元格数

    来源:网络收集  点击:  时间:2024-05-09
    【导读】:
    在Excel表格里面,一些单元格常被我们填充一些颜色来进行突出显示。对于这些已经填充颜色的单元格,我们要统计某一种颜色的单元格数量时,可以使用到VBA程序来对它进行计数,然后将结果显示出来。工具/原料moreExcel 2010方法/步骤1/9分步阅读

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

    2/9

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

    3/9

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

    4/9

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

    5/9

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

    6/9

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

    7/9

    双击打开“模块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/9

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

    9/9

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

    注意事项

    Excel表格里面需要启用宏功能,之后才能使用VBA程序进行计算。

    上面的程序里面可以修改指定的单元格颜色、范围进行变通使用。

    EXCEL编程语言VBA单元格颜色统计宏
    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_718638.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-07 06:54:27  耗时:0.031
    0.0308s