Forum Discussion
Weekly Sales from Total Sales Data & possible Visualizations
I have an Excel file that contains the below data which is updated every week with new data. I have connected this Excel file to Power BI. Excel sheet consists of the first 3 columns shown below: [Date], [Company], and [Total Sales]. The [Total Sales] column shows the total number of items sold by each Company of [Company] column as on the date in the [Date] column.
I have also created a date table "Date_Table".
I am trying to create a measure with the below formula based on watching a YouTube tutorial:
Sales_PW =
VAR CurrentWeek =
SELECTEDVALUE ( Date_Table[WeekNum] )
VAR CurrentYear =
SELECTEDVALUE ( Date_Table[Year] )
VAR MaxWeekNumber =
CALCULATE ( MAX ( Date_Table[WeekNum] ), ALL ( Date_Table[Date] ) )
RETURN
SUMX (
FILTER (
ALL ( Date_Table[Date] ),
IF (
CurrentWeek = 1,
Date_Table[WeekNum] = MaxWeekNumber
&& Date_Table[Year] = CurrentYear - 1,
Date_Table[WeekNum] = CurrentWeek - 1
&& Date_Table[Year] = CurrentYear
)
),
[Total Sales]
)
While using this measure I get an error message:
"A single value for column 'WeekNum' in table 'Date_Table' cannot be determined. This can happen when a measure formula refers to a column that contains many values without specifying an aggregation such as min, max, count, or sum to get a single result."
- I want to know how to get [Weekly Sales] in Power Bi without disturbing the data in Excel Sheet. Should it be done by adding a Colum or by creating a Measure?
- So far, I have been using the Horizontal Bar Chart to show the Total Sales for each Company. [Date] is used as a slicer. I now want to compare Total Sales & Weekly Sales keeping [Date] as a slicer. How can I do it in the same chart?
1 Reply
- johnt75Super User
I think it should work if you tweak it to
Sales_PW = VAR CurrentWeek = SELECTEDVALUE ( Date_Table[WeekNum] ) VAR CurrentYear = SELECTEDVALUE ( Date_Table[Year] ) VAR MaxWeekNumber = CALCULATE ( MAX ( Date_Table[WeekNum] ), ALL ( Date_Table[Date] ) ) RETURN SUMX ( FILTER ( ALL ( Date_Table ), IF ( CurrentWeek = 1, Date_Table[WeekNum] = MaxWeekNumber && Date_Table[Year] = CurrentYear - 1, Date_Table[WeekNum] = CurrentWeek - 1 && Date_Table[Year] = CurrentYear ) ), [Total Sales] )