Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Power BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.

Reply
ckhoo2007
Helper I
Helper I

The MAX function only accepts a column reference as an argument.

Hi All,

I wrote a  DAX formula as follow to calculate previous week sales, instead of averaging over 7 days as the records are not the same each day I try to use SUMX function:

 

PW_Sales = IF(ISBLANK('APJ'[CW_Sales]), BLANK(),
(CALCULATE(DIVIDE(SUMX('APJ','APJ'[Sales]*'APJ'[CW_Record]),'APJ'[CW_Record]),
FILTER(ALL('Date'),'Date'[Week Rank]=max('Date'[Week Rank]-1)))))
 
However it returns an error:
The MAX function only accepts a column reference as an argument.
 
It works fine for calculating current week sales though:
CW_Sales = CALCULATE(DIVIDE(sumx('APJ','APJ'[Sales]*'APJ'[CW_Record]),'APJ'[CW_Record]),
FILTER(ALL('Date'),'Date'[Week Rank]=max('Date'[Week Rank])))
 
Appreciate your help how to fix this, thanks.
 
Regards,
Choo
1 ACCEPTED SOLUTION
amitchandak
Super User
Super User

@ckhoo2007 , -1 is inside max , move outside

 

PW_Sales = IF(ISBLANK('APJ'[CW_Sales]), BLANK(),
(CALCULATE(DIVIDE(SUMX('APJ','APJ'[Sales]*'APJ'[CW_Record]),'APJ'[CW_Record]),
FILTER(ALL('Date'),'Date'[Week Rank]=max('Date'[Week Rank])-1))))

Full Power BI Video 20 Hours YouTube
Microsoft Fabric Series 60+ Videos YouTube
Microsoft Fabric Hindi End to End YouTube

View solution in original post

4 REPLIES 4
parry2k
Super User
Super User

@ckhoo2007 you have subtract -1 after max

 

PW_Sales = IF(ISBLANK('APJ'[CW_Sales]), BLANK(),
(CALCULATE(DIVIDE(SUMX('APJ','APJ'[Sales]*'APJ'[CW_Record]),'APJ'[CW_Record]),
FILTER(ALL('Date'),'Date'[Week Rank]=max('Date'[Week Rank])-1))))

 

Check my latest blog post Comparing Selected Client With Other Top N Clients | PeryTUS  I would ❤ Kudos if my solution helped. 👉 If you can spend time posting the question, you can also make efforts to give Kudos to whoever helped to solve your problem. It is a token of appreciation!

Visit us at https://perytus.com, your one-stop-shop for Power BI-related projects/training/consultancy.



Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!

Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo

If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤


Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.

Thanks Parry2k, I added -1 as I need to calculate previous week sales, it wrks fine when I calculate the average however it gives the above error when I changed the average to SumX.

 

PW_Sales = IF(ISBLANK('APJ'[CW_Sales]), BLANK(),
(CALCULATE(AVERAGE(APJ[Sales]), FILTER(ALL('Date'),'Date'[Week Rank]=max('Date'[Week Rank])-1))))
amitchandak
Super User
Super User

@ckhoo2007 , -1 is inside max , move outside

 

PW_Sales = IF(ISBLANK('APJ'[CW_Sales]), BLANK(),
(CALCULATE(DIVIDE(SUMX('APJ','APJ'[Sales]*'APJ'[CW_Record]),'APJ'[CW_Record]),
FILTER(ALL('Date'),'Date'[Week Rank]=max('Date'[Week Rank])-1))))

Full Power BI Video 20 Hours YouTube
Microsoft Fabric Series 60+ Videos YouTube
Microsoft Fabric Hindi End to End YouTube

Thanks!

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June 2025 Power BI Update Carousel

Power BI Monthly Update - June 2025

Check out the June 2025 Power BI update to learn about new features.

June 2025 community update carousel

Fabric Community Update - June 2025

Find out what's new and trending in the Fabric community.