Forum Discussion

ahiemstra's avatar
ahiemstra
Helper I
2 years ago
Solved

Multiple SUMIFs Functionality in DAX

I’m hoping for some help with a DAX. I’m trying to achieve the functionality of multiple SUMIFs in Excel and have searched the community to see if I could figure it out. Clearly, I’m missing something as I’ve not been successful as of yet. I’ve pasted a sample of my table below:

 

Table Name: ADMIN

DateActivity TypeTime
11-Sep-2023Indirect Care Time1.00
12-Sep-2023Rx Renewal Time7.50
12-Sep-2023PFHT Activity Time1.00
13-Sep-2023Rx Renewal Time0.50
13-Sep-2023PFHT Activity Time0.50
13-Sep-2023No Show Cancel Time1.00
14-Sep-2023No Show Cancel Time0.25
14-Sep-2023PFHT Activity Time0.50
15-Sep-2023Indirect Care Time0.50
15-Sep-2023PFHT Activity Time0.50
18-Sep-2023Indirect Care Time0.50
18-Sep-2023Rx Renewal Time1.00
19-Sep-2023No Show Cancel Time0.50
19-Sep-2023Secure Message Time1.50
20-Sep-2023Rx Renewal Time1.50
20-Sep-2023Program Develop Time1.00

 

I would like a DAX that sums time recorded in the Time column for the following Activity Types:

  • Indirect Care Time
  • No Show Cancel Time
  • Rx Renewal Time
  • Secure Message Time

In my sample data above, this would equate to 15.75.

 

In Excel, I would have used: =SUMIF(B:B,"Indirect Care Time",C:C)+SUMIF(B:B,"No Show Cancel Time",C:C)+SUMIF(B:B,"Rx Renewal Time",C:C)+SUMIF(B:B,"Secure Message Time",C:C) where column B Activity Type and column C is Time.

 

I’ve tried several variations of the DAX below but keep receiving errors so I’m doing something wrong.

 

Indirect Service Hours =

CALCULATE(

SUM(FILTER('ADMIN','ADMIN'[Activity Type]="Indirect Care Time"),'ADMIN'[Time])

,(FILTER('ADMIN','ADMIN'[Activity Type]="No Show Cancel Time"),'ADMIN'[Time])

,(FILTER('ADMIN','ADMIN'[Activity Type]="Rx Renewal Time"),'ADMIN'[Time])

,(FILTER('ADMIN','ADMIN'[Activity Type]="Secure Message Time"),'ADMIN'[Time])

)

  • ahiemstra 

    Try this measure:

    Indirect Service Hours =
    CALCULATE (
        SUM ( 'ADMIN'[Time] ),
        'ADMIN'[Activity Type]
            IN {
                "Indirect Care Time",
                "No Show Cancel Time",
                "Rx Renewal Time",
                "Secure Message Time"
            }
    )

1 Reply

  • ahiemstra 

    Try this measure:

    Indirect Service Hours =
    CALCULATE (
        SUM ( 'ADMIN'[Time] ),
        'ADMIN'[Activity Type]
            IN {
                "Indirect Care Time",
                "No Show Cancel Time",
                "Rx Renewal Time",
                "Secure Message Time"
            }
    )