Forum Discussion

wmedin2022's avatar
wmedin2022
New Member
3 years ago
Solved

Date duration with if stament

Hi All, im stuck with the follwing DAX command on my power query. I want to Days Passed to calculate the duration in days based on the status. If status is "complete" then calculate duration from date to date complete. if <> complete then calculate date to current date or Today.I

 I get this error message

 

Expression.Error: 2 arguments were passed to a function which expects 1.
Details:
Pattern=
Arguments=[List]

 

this is my DAX

 

= Table.AddColumn(#"Extracted Month Name", "Days_Passed", each if [Status] = "Complete" then
Duration.Days([Date], [Date Closed]) else Duration.Days([Date], DateTime.LocalNow()))

 

Thanks in advance!

  • Hi!

    Duration.Days expects one argument, a difference between two dates, so you need to use a minus sign instead of a comma there. You also need to convert DateTime.LocalNow() from DateTime to Date. Try something like:

    = Table.AddColumn(#"Extracted Month Name", "Days_Passed", each if[Status] = "Complete" then Duration.Days([Date Closed]-[Date]) else Duration.Days(DateTime.Date(DateTime.LocalNow())-[Date]))

     

     Hope this helps!

3 Replies

  • Hi!

    Duration.Days expects one argument, a difference between two dates, so you need to use a minus sign instead of a comma there. You also need to convert DateTime.LocalNow() from DateTime to Date. Try something like:

    = Table.AddColumn(#"Extracted Month Name", "Days_Passed", each if[Status] = "Complete" then Duration.Days([Date Closed]-[Date]) else Duration.Days(DateTime.Date(DateTime.LocalNow())-[Date]))

     

     Hope this helps!