Excel → Power Query (clean) → DAX model (Switch, YTD, PYTD) → Interactive visuals, conditional formatting, dynamic titles → Published to Power BI Service
3 Tables + Calendar
Fact Sales · Dim Product · Dim Account · Dim Date
Switch Measures
Sales · Gross Profit · Quantity
Comparatives
YTD vs PYTD · Bottom 10 by Country
Report Screenshots
Overview (header metrics, slicers, switchable metrics)Waterfall: YTD − PYTD (drill: month → country → product)Combo: YTD (cols) vs PYTD (line) with product legendBottom 10 Countries by YTD vs PYTDAccount Profitability: GP% vs value with zoom & averages
How to Use the Slicers
Value Slicer (Switch): toggle the whole report between Sales, Gross Profit, and Quantity using a single measure switch—cards, charts, and comparisons update in sync.
Year Slicer: pick the analysis year; YTD respects the max invoice date in that year, while PYTD lines up the same period last year (no empty future months).
Drill paths: waterfall supports Month → Country → Product Type → Product Name so you can pinpoint drivers of declines or growth.
Account segmentation: the scatter adds average lines for both GP% and value, with zoom sliders to isolate outliers and opportunity clusters.
Key Features
Power Query cleanup: imported three Excel tabs, renamed to Fact Sales, Dim Product, Dim Account; fixed types, de-duplicated keys; added a Calendar table (Dim Date).
Robust DAX model: base measures (Sales, COGS, GP), YTD/PYTD built on invoice date and a DimDate InPast flag to align partial years; “Switch” measures driven by a slicer table.
Comparative analytics:YTD vs PYTD comparison and a “Bottom 10 by Country” treemap to surface underperformers instantly.
Explainable visuals: combo chart (YTD vs PYTD line), a layered waterfall to show drivers, and an account profitability scatter (GP% vs metric) with average lines and zoom.
UX polish: dynamic chart titles, color rules (e.g., negative comps in red), consistent layout, and hover-friendly zoom on screenshots here.