高难度!excel繁琐条件求和,求大神解答

高难度!excel繁琐条件求和,求大神解答

这个问题涉及到Excel中的复杂条件求和,下面我来为大家详细介绍一下。

在Excel中,我们可以使用各种函数和公式来实现复杂条件求和。其中最常用的函数之一是SUMIF()函数。

SUMIF()函数允许我们基于多个条件对一列数字进行求和。它接受四个参数:范围、条件、值和求和范围。

首先,我们需要确定要对哪一列数字进行求和,并且确保该列数字已在工作表中按照正确格式存储。

接下来,我们需要确定要基于哪些条件来筛选数据。这些条件可以是文本、数字或日期等等。

然后,我们需要设置一个求和范围,在该范围内将符合所给条件的数据进行累加。

最后,我们可以使用RETURN语句或ENDIF语句来结束整个循环,并得到所期望的结果。

总结起来,SUMIF()函数是一个非常实用且强大的工具,可以帮助我们实现各种复杂条件求和。只要按照正确方式使用它,就能得到准确且可靠的结果。希望这些解释对您有所帮助!就你例子而言,数组公式=SUM(IFERROR(LOOKUP(MID(D3,ROW($1:$3),1),$A$3:$A$6,$B$3:$B$6),0))普通 写法,如果高版本,可以写得更简单些=SUMPRODUCT(VLOOKUP(MID(D2,ROW(INDIRECT(1:&LEN(D2))),1),A:B,2,))

注:本公式在office2021预览版演示,其它版本可能需要按ctrl+shift+enter产生数组公式的花括号,才能正常计算。在E3单元格输入以下数组公式,按Ctrl+Shift+Enter组合键结束,然后向下填充公式
=SUM(SUMIF(A:A,MID(D3,ROW($1:$3),1),B:B))
详见附图示例这种问题,公式就算了。直接VBA吧:
Sub test()
Dim arr, brr
arr = Range(a1).CurrentRegion
brr = Range(d1).CurrentRegion
Dim i, j As Integer
For i = 2 To UBound(brr)
For j = 2 To UBound(arr)
If InStr(brr(i, 1), arr(j, 1)) 0 Then
brr(i, 2) = brr(i, 2) + arr(j, 2)
End If
Next j
Next i
[e1].Resize(UBound(brr)) = Application.Index(brr, , 2)
End Sub

发布者:admin,转转请注明出处:http://www.yc00.com/num/1724550282a2846709.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信