使用 VBA 计算具有特定单元格颜色的单元格数

您所在的位置:网站首页 vba将单元格底色设置为红色的代码怎么弄回来 使用 VBA 计算具有特定单元格颜色的单元格数

使用 VBA 计算具有特定单元格颜色的单元格数

2024-04-23 19:57| 来源: 网络整理| 查看: 265

使用 VBA 计算具有特定单元格颜色的单元格数 项目06/20/2023 适用于: Excel for Office 365, Excel 2019, Excel 2016, Excel 2013, Excel 2010, Microsoft Office Excel 2007, Microsoft Office Excel 2003 摘要

在“Microsoft Excel 公式”选项卡上,我们知道在“更多函>数统计”类别中,有一个名为 COUNTIF 的函数,该函数对满足给定条件的区域内的单元格数进行计数。 该函数的条件仅限于文本或数字。 但是,使用 VBA 可以创建一个函数来计算具有其他条件(如单元格颜色)的单元格数。

COUNTIF

更多信息

使用 VBA,可以创建用户定义函数 (UDF) 并将其保存到加载项文件中,以便可以在其他工作簿中使用并传输到其他计算机。

如何创建 UDF

下面是创建用于计算单元格颜色的 UDF 的步骤:

打开 Microsoft Excel,然后按 Alt+F11 显示 Visual Basic 编辑器 (VBE) 窗口。

在 “插入 ”菜单上,选择 “模块 ”以创建模块。 然后键入以下脚本:

Function CountCcolor(range_data As range, criteria As range) As Long Dim datax As range Dim xcolor As Long xcolor = criteria.Interior.ColorIndex For Each datax In range_data If datax.Interior.ColorIndex = xcolor Then CountCcolor = CountCcolor + 1 End If Next datax End Function

在“插入”菜单上,选择“模块”以创建模块。然后编写以下脚本

关闭 VBE 窗口以返回到 Excel。

若要测试 UDF,请创建包含不同颜色的单元格列的示例数据。

在单元格 D3 中,编写函数:

=CountCcolor(range_data,criteria)

在“range_data”参数中,选择单元格 C2 到 C51。

在“criteria”参数中,选择单元格 F1。

在单元格 D3 中,编写函数:=CountCcolor

按 Enter 键。 单元格 F2 中的结果为 6。 这意味着以蓝色着色的单元格数为 6。

按 Enter 并在单元格 F2 中,结果为 6。这意味着蓝色单元格颜色的单元格数为 6 个单元格

可以使用其他颜色进行测试。 使用“家庭>填充颜色”更改单元格 F1 中的颜色以及你希望从数据中获取的任何颜色。

还可以测试另一种颜色。使用格式刷更改单元格 F1 中的颜色,并使用所需的任何颜色从数据中获取相同的颜色

还可以压缩 UDF,以便可在另一个工作簿或其他计算机上使用该函数。 为此,请执行以下步骤:

步骤 1:保存工作簿

a. 选择 “文件”,然后 另存为” (根据需要选择 “浏览 ”。)

b. 选择 Excel Add-In (.xlam) 作为格式,并为文件命名,例如 CountCcolor。

注意

可将Add-In文件保存到所需的任意位置。 但是,若要将其列为 Excel 程序中的Add-In,请将其保存到默认位置。 在 Windows 7 中,任何版本的 Microsoft Excel 的默认位置是:C:\Users\RADDINI\AppData\Roaming\Microsoft\AddIns

步骤 2:安装加载项

a. 在要安装外接程序的计算机上打开 Microsoft Excel。

b. 通过在“开发人员”选项卡上选择 Excel 外接程序(用于 Excel 2013 和更高版本)打开Add-Ins对话框。 (Excel 2010.) 上的加载项

c. 在 “加载项 ”对话框中,选择 “浏览”。 在Add-In对话框中,单击“浏览”按钮,以便显示“浏览”对话框。

d. 转到保存Add-In文件的文件位置 (如 USB 驱动器或基于云的文件夹) 。 选择该文件,然后选择 “打开”。

e. 在Add-Ins对话框中,确保未选中加载项复选框。 然后,选择“确定”。 在Add-Ins对话框中,确保未选中加载项复选框。然后选择“确定”。

已安装 Count Cell Color UDF 并准备使用。 你可以随时访问此函数,方法是将光标放入工作表中的任何单元格并键入:

=CountCcolor(range_data,criteria) 社区解决方案内容声明

MICROSOFT CORPORATION 和/或其各自的供应商没有说明此处包含的信息和相关图形的适用性、可靠性或准确性。 所有此类信息和相关图形均“按原样”提供,无需任何类型的保证。 MICROSOFT 和/或其各自的供应商特此不理会有关此信息和相关图形的所有保证和条件,包括所有隐含的保证和适销条件、特定目的的适用性、工作方式、游戏和非侵权。 你特别同意,在任何情况下,MICROSOFT 和/或其供应商都不应对任何直接、间接、惩罚性、附带、特殊、后果性损害或任何损害负责,包括因使用或无法使用此处包含的信息和相关图形而产生的或以任何方式导致的、不限于使用、数据或利润损失的任何损害, 无论是基于合同、侵权、疏忽、严格责任还是其他原因,即使 MICROSOFT 或其任何供应商都被告知存在损害的可能性。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3