你好,希望蚂蚁提供的方法能帮到你!
这里蚂蚁觉得可以使用两种方法来解决——定义区域求和、VBA
由于此情况使用函数(Function)比使用过程(Sub)更为方便、通用,且保存代码以后粘贴即用,所以这里就以函数来演示。
VBA效率更高,保存代码后,可以粘贴到任何表格使用
定于区域求和,更容易理解
两者根据自己的情况进行选择
这里我列了一组简单的数据作为演示。以下操作均来自于Excel 2010版本。
Option Explicit
Function Test(Color_Cell As Range, Sum_Range As Range)
'声明变量 col 存储颜色索引值
Dim col As Integer
'声明变量 c 存储位置信息
Dim c As Range
'将成员变量的颜色索引值赋给col
col = Color_Cell.Interior.ColorIndex
'遍历 Sum_Range,如果被查找区域中有单元格背景色与待查找单元格的背景色相同,则累加值
For Each c In Sum_Range
If col = c.Interior.ColorIndex Then
Test = Test + c.Value
End If
Next c
End Function
这段代码创建了一个新的函数【Test】,功能是给出需要查找的单元格背景色,然后从查找区域中找出所有相匹配的颜色,然后将匹配单元格中的值累加并输出结果。里面我写了注释,可能注释并不太专业,不过没关系,复制保存,以后可以在任意电脑用,很方便。具体使用过程如图,快捷键 【Alt + F11】快速调出VBE。
这种方法的好处是不需要使用代码,只是操作起来可能稍微时间长一点。
操作方法:
1、使用【查找】功能,根据条件查找所有相同的颜色,然后使用【公式】选项卡下“定义名称”组中的【定义名称】功能,为选择的颜色设定名称。
注意:点击查找全部以后,一定要全选结果,再关闭查找窗口,否则只会定义一个单元格的名称,不会定义所有颜色的名称。
2、直接使用求和公式求和
定义好所有需要求和的颜色种类的名称后,就可以使用求和公式求和了。在需要展示结果的单元格中输入【=Sum(绿色)】,回车就得到求和结果了。
注意,请将“绿色”替换为你单元格中的实际颜色。
好了,这两种方法你都学会了吗?谢谢阅读,我是蚂蚁,喜欢请点个赞,欢迎关注噢!
联系客服