You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel多条件计数求助:统计教师类别的#N/A或红色单元格数量

统计满足多条件(含单元格颜色)的数量

Excel原生函数无法直接读取单元格填充色,以下两种方案可实现你的需求:

方案1:VBA自定义函数

  1. 按Alt + F11打开VBA编辑器,右键左侧工程窗口的工作簿名称→插入→模块,粘贴以下代码:
Function CountTeacherNAOrRed(rngCategory As Range, rngTarget As Range) As Long
    Dim cellCat As Range, cellTar As Range
    Dim count As Long: count = 0
    
    ' 校验两个区域行数是否一致
    If rngCategory.Rows.Count <> rngTarget.Rows.Count Then
        CountTeacherNAOrRed = CVErr(xlErrRef)
        Exit Function
    End If
    
    For Each cellCat In rngCategory
        Set cellTar = rngTarget.Cells(cellCat.Row - rngCategory.Row + 1)
        If cellCat.Value = "教师" Then
            ' 判断目标单元格是否为#N/A,或填充色为默认红色(ColorIndex=3)
            If IsError(cellTar.Value) Or cellTar.Interior.ColorIndex = 3 Then
                count = count + 1
            End If
        End If
    Next
    CountTeacherNAOrRed = count
End Function
  1. 返回Excel工作表,在空白单元格输入公式:=CountTeacherNAOrRed(类别列范围, 目标单元格范围),例如=CountTeacherNAOrRed(A2:A100, B2:B100)
  2. 若使用的是自定义红色,先选中该红色填充的单元格,在VBA编辑器的立即窗口输入?ActiveCell.Interior.ColorIndex获取对应数值,替换代码中的3即可
  3. 保存工作簿时需选择.xlsm格式(启用宏的工作簿)

方案2:无宏间接实现

通过条件格式将颜色条件转换为函数可识别的标记:

  1. 选中目标单元格区域,统一用条件格式标记红色填充:
    • 点击「开始」→「条件格式」→「新建规则」→「使用公式确定要设置格式的单元格」,输入=TRUE,设置填充色为红色(与现有红色填充一致)
  2. 添加辅助列(如C列),在C2单元格输入公式:
=IF(AND(A2="教师", OR(ISNA(B2), CELL("color", B2)=3)), 1, 0)
  1. 下拉填充辅助列,最后用=SUM(C:C)统计符合条件的总数

内容的提问来源于stack exchange,提问作者user2205055

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 16:01:09