Define a Function with Optional Parameters in Power Query M

Creates a custom function where some parameters are optional and fall back to a default when omitted.

Advanced M FunctionsIntermediatefunctionoptionaldefault parameter

Power Query M code

let
    GetDiscountedPrice = (price as number, optional discountPercent as number) as number =>
        price * (1 - (if discountPercent = null then 0.1 else discountPercent)),
    Result = GetDiscountedPrice(100)
in
    Result

Notes

Optional parameters that are omitted come through as null, so check for null rather than assuming a default value.

Requirements

How to use this snippet

  1. In Power BI Desktop, choose Transform data to open Power Query, then open the Advanced Editor on a query (or start from a blank query).
  2. Paste the snippet and replace the placeholder names (tables, columns, file paths) with your own. Check the requirements above first.
  3. Run it through the Power Query M Formatter to tidy the layout.

Related Power Query M snippets

More Power Query M resources

Browse all 145 snippets in the Power Query M Code Snippets, or search the library for something similar to Define a Function with Optional Parameters.