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

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
doctorv1979
Frequent Visitor

Custom waterfall chart include previous months

 
I need to include prevvious months data as static bars on my chart in addition to the the waterfall chart. Something like this. Is this possible. I need to show End FY22, End Q1, Jauary and February data. I can do it in excel but unable to do this in Power BI. Any tips?
doctorv1979_0-1680205085763.png

 

 

1 REPLY 1
Anonymous
Not applicable

Hi  @doctorv1979 ,

 

Here are the steps you can follow:

1. Create calculated column.

 

Month = FORMAT('Table'[Date],"mmmm" )

 

vyangliumsft_0-1680491907844.png

2. Enter data – create table.

vyangliumsft_1-1680491907845.png

3. Create calculated table.

 

Table 2 =
var _table1=
SUMMARIZE('Table','Table'[Month])
return
UNION(
  _table1  ,'Group Table')

 

4. Create measure.

 

Measure =
var _today=YEAR(TODAY())
return
SWITCH(
    TRUE(),
    MAX('Table 2'[Month])="End FY22",
    SUMX(
        FILTER(ALL('Table'),
        YEAR('Table'[Date])=2022),[Value]),
        MAX('Table 2'[Month])="End FY23",
    SUMX(
        FILTER(ALL('Table'),
        YEAR('Table'[Date])=2023),[Value]),
    MAX('Table 2'[Month])= "End Q1",
    SUMX(
        FILTER(ALL('Table'),
        YEAR('Table'[Date])=_today&&QUARTER('Table'[Date])=1),[Value])
  ,
    MAX('Table 2'[Month])= "End Q2",
    SUMX(
        FILTER(ALL('Table'),
        YEAR('Table'[Date])=_today&&QUARTER('Table'[Date])=2),[Value]),
    MAX('Table 2'[Month])= "End Q3",
    SUMX(
        FILTER(ALL('Table'),
        YEAR('Table'[Date])=_today&&QUARTER('Table'[Date])=3),[Value]),
    MAX('Table 2'[Month])= "End Q4",
    SUMX(
        FILTER(ALL('Table'),
        YEAR('Table'[Date])=_today&&QUARTER('Table'[Date])=4),[Value]),
    SUMX(
        FILTER(ALL('Table'),
        YEAR('Table'[Date])=_today&&'Table'[Month] in SELECTCOLUMNS('Table 2',"1",[Month])),[Value]))
Flag =
var _table=
FILTER(
'Table',NOT( 'Table'[Month]) in {"January","February"})
var _table2=
SUMMARIZE(
    _table,[Month])
return
IF(
    MAX('Table 2'[Month]) in _table2,0,1)

 

 

5. Place [Flag]in Filters, set is=1, apply filter.

vyangliumsft_0-1680492032562.png

6. Result:

vyangliumsft_1-1680492037429.png

 

Best Regards,

Liu Yang

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly

Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!

December 2025 Power BI Update Carousel

Power BI Monthly Update - December 2025

Check out the December 2025 Power BI Holiday Recap!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.