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
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.