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

如何在Excel中创建SUMIFBOLD(SUMMEWENNFETT)公式?

SUMIFBOLD(SUMMEWENNFETT)自定义函数VBA实现

以下是实现同时按条件筛选且仅对加粗格式单元格求和的VBA代码,你可以直接添加到Excel的模块中使用:

Function SUMIFBOLD(rngCriteria As Range, criteria As Variant, rngSum As Range) As Double
    Dim cell As Range
    Dim i As Integer
    Dim sumTotal As Double
    
    ' 确保条件区域和求和区域行数/列数匹配
    If rngCriteria.Count <> rngSum.Count Then
        SUMIFBOLD = CVErr(xlErrRef)
        Exit Function
    End If
    
    sumTotal = 0
    i = 1
    
    For Each cell In rngCriteria
        ' 判断单元格是否满足条件,且对应求和区域的单元格字体为加粗
        If Application.WorksheetFunction.CountIf(cell, criteria) = 1 And rngSum.Cells(i).Font.Bold = True Then
            ' 仅当单元格为数值时累加
            If IsNumeric(rngSum.Cells(i).Value) Then
                sumTotal = sumTotal + rngSum.Cells(i).Value
            End If
        End If
        i = i + 1
    Next cell
    
    SUMIFBOLD = sumTotal
End Function

' 德语版本函数名
Function SUMMEWENNFETT(rngCriteria As Range, criteria As Variant, rngSum As Range) As Double
    SUMMEWENNFETT = SUMIFBOLD(rngCriteria, criteria, rngSum)
End Function

使用说明

  1. 打开Excel,按下Alt + F11打开VBA编辑器;
  2. 右键点击当前工作簿,选择「插入」→「模块」,将上述代码粘贴到模块窗口中;
  3. 返回Excel工作表,在单元格中输入公式:
    • 英文版本:=SUMIFBOLD(条件区域, 条件, 求和区域)
    • 德语版本:=SUMMEWENNFETT(条件区域, 条件, 求和区域)

举个例子:如果要对A列中等于"产品A"的行,求和B列中加粗的数值,公式可以写为=SUMIFBOLD(A:A, "产品A", B:B)(德语版本替换函数名即可)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 05:32:10