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

Try your skills in the Power BI Dataviz World Championship! Round one ends June 26. Join now

Reply
swathrddy
Helper I
Helper I

Calculated Measures

Hi,

 

could you please create different measures based on KPI and Target Type for the below sample data: eventually to create charts/trends.

KPIDateActualTargetTarget Type
AAA1/01/20243320Number
AAA1/02/20241420Number
AAA1/03/20241520Number
AAA1/04/2024620Number
AAA1/05/2024720Number
AAA1/06/20242020Number
AAA1/07/2024720Number
AAA1/08/20242020Number
BBB1/01/202478%70%Percentage
BBB1/02/202478%70%Percentage
BBB1/03/202474%70%Percentage
BBB1/04/202466%70%Percentage
BBB1/05/202475%70%Percentage
BBB1/06/202475%70%Percentage
BBB1/07/202480%70%Percentage
BBB1/08/202481%70%Percentage
1 ACCEPTED SOLUTION
Shravan133
Super User
Super User

However, here a few examples based on your data :

  1. Total Actual Value Measure:

TotalActual = SUM('KPIData'[Actual])

  1. Total Target Value Measure:

TotalTarget = SUM('KPIData'[Target])

Measures for "Number" Target Type

  1. Number KPI Actual:

NumberActual =

CALCULATE(

    [TotalActual],

    'KPIData'[Target Type] = "Number"

)

  1. Number KPI Target:

NumberTarget =

CALCULATE(

    [TotalTarget],

    'KPIData'[Target Type] = "Number"

)

  1. Number KPI Achievement Percentage:

NumberAchievementPercentage =

DIVIDE([NumberActual], [NumberTarget])

Measures for "Percentage" Target Type

  1. Percentage KPI Actual:

PercentageActual =

CALCULATE(

    [TotalActual],

    'KPIData'[Target Type] = "Percentage"

)

  1. Percentage KPI Target:

PercentageTarget =

CALCULATE(

    [TotalTarget],

    'KPIData'[Target Type] = "Percentage"

)

  1. Percentage KPI Achievement Percentage:

PercentageAchievementPercentage =

DIVIDE([PercentageActual], [PercentageTarget])

Dynamic Achievement Percentage:

KPI_AchievementPercentage =

SWITCH(

    TRUE(),

    MAX('KPIData'[Target Type]) = "Number", DIVIDE([NumberActual], [NumberTarget]),

    MAX('KPIData'[Target Type]) = "Percentage", DIVIDE([PercentageActual], [PercentageTarget])

)

  1. Dynamic Actual Value:

KPI_ActualValue =

SWITCH(

    TRUE(),

    MAX('KPIData'[Target Type]) = "Number", [NumberActual],

    MAX('KPIData'[Target Type]) = "Percentage", [PercentageActual]

)

  1. Dynamic Target Value:

KPI_TargetValue =

SWITCH(

    TRUE(),

    MAX('KPIData'[Target Type]) = "Number", [NumberTarget],

    MAX('KPIData'[Target Type]) = "Percentage", [PercentageTarget]

)

 

View solution in original post

4 REPLIES 4
swathrddy
Helper I
Helper I

Thank you Shravan, yes i am trying diffrent ways to achive different charts for my project. 

Please mark my answer as solution if i've answered your query.

Shravan133
Super User
Super User

However, here a few examples based on your data :

  1. Total Actual Value Measure:

TotalActual = SUM('KPIData'[Actual])

  1. Total Target Value Measure:

TotalTarget = SUM('KPIData'[Target])

Measures for "Number" Target Type

  1. Number KPI Actual:

NumberActual =

CALCULATE(

    [TotalActual],

    'KPIData'[Target Type] = "Number"

)

  1. Number KPI Target:

NumberTarget =

CALCULATE(

    [TotalTarget],

    'KPIData'[Target Type] = "Number"

)

  1. Number KPI Achievement Percentage:

NumberAchievementPercentage =

DIVIDE([NumberActual], [NumberTarget])

Measures for "Percentage" Target Type

  1. Percentage KPI Actual:

PercentageActual =

CALCULATE(

    [TotalActual],

    'KPIData'[Target Type] = "Percentage"

)

  1. Percentage KPI Target:

PercentageTarget =

CALCULATE(

    [TotalTarget],

    'KPIData'[Target Type] = "Percentage"

)

  1. Percentage KPI Achievement Percentage:

PercentageAchievementPercentage =

DIVIDE([PercentageActual], [PercentageTarget])

Dynamic Achievement Percentage:

KPI_AchievementPercentage =

SWITCH(

    TRUE(),

    MAX('KPIData'[Target Type]) = "Number", DIVIDE([NumberActual], [NumberTarget]),

    MAX('KPIData'[Target Type]) = "Percentage", DIVIDE([PercentageActual], [PercentageTarget])

)

  1. Dynamic Actual Value:

KPI_ActualValue =

SWITCH(

    TRUE(),

    MAX('KPIData'[Target Type]) = "Number", [NumberActual],

    MAX('KPIData'[Target Type]) = "Percentage", [PercentageActual]

)

  1. Dynamic Target Value:

KPI_TargetValue =

SWITCH(

    TRUE(),

    MAX('KPIData'[Target Type]) = "Number", [NumberTarget],

    MAX('KPIData'[Target Type]) = "Percentage", [PercentageTarget]

)

 

Shravan133
Super User
Super User

@swathrddy  If You are new to Power BI, please put some effort into learning to create mesaures. Ask ChatGpt or try creating measures on your own instead of asking the forum to do it for you. The forum can help if your measure doesnt work or if something is wrong.

Helpful resources

Announcements
Fabric Data Days is here Carousel

Fabric Data Days 2026

Don't miss out on Data Days, June 15 through August 7. Learn Fabric, Power BI, SQL, AI and more.

May Power BI Update Carousel

Power BI Monthly Update - May 2026

Check out the May 2026 Power BI update to learn about new features.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.