Excel 2003 SUM来自使用多个条件的表格数据

时间:2012-01-18 21:25:35

标签: excel excel-2003 excel-formula

我一直在努力解决这个问题...我在名为PickupData的工作表上有以下数据表

enter image description here

然后我有一张表,我试图将收入(col d)加起来,其中org_code(col a)=第18行和第9行中的值(col c)=第a列中的值

enter image description here

我尝试过SUMPRODUCT,SUM(IF(blah,IF(blah,x,0),0)(按ctrl-shift-enter)甚至条件求和向导。我不认为我可以使用DSUM,因为它需要为标准参数传递单元格范围。

我也尝试过合并细胞,因为我认为这可能影响结果。

任何人都可以提供有效的解决方案吗?

继承测试工作簿:here

由于

3 个答案:

答案 0 :(得分:3)

Sumproduct将为您服务:

=SUMPRODUCT(D1:D8,--(A1:A8=OrgRef),--(C1:C8=MonthRef))

OrgRef和MonthRef是过滤器地址的占位符。

在您的示例书中,组织代码是文本,而您输入26的“Org_Code”字段是一个数字。他们不会匹配。将您的组织代码转换为数字或前言26,并将其标记为字符串。

答案 1 :(得分:0)

你试过了吗?

SUMIF()
SUMIFS()

或Excel宏?

代码

Sub Test1()
    Dim rRange As Range
    Set rRange = Range("C:C")

    Dim iSum As Integer
    For Each rRange In rRange

        If (rRange.Offset(0, -2) = 18) Then
            iSum = iSum + rRange.Value
        End If

        If (IsEmpty(rRange.Offset(1, 0))) Then
            Exit For
        End If
    Next rRange

    Debug.Print iSum
End Sub

答案 2 :(得分:0)

SUM(IF(......应该可以,但是你需要取消合并你的单元格,因为数组公式在合并的单元格中不起作用。以下进入B19应该有效)(记住ctrl + shift +输入)

=SUM(IF(PickupData!$A$2:$A$8=B$18,IF(PickupData!$C$2:$C$8=$A19,PickupData!$D$2:$D$8,0),0))