Forum Discussion

SRJPBI's avatar
SRJPBI
Frequent Visitor
6 days ago

How to automatically export a PBI screenshot for the latest month?

I have a Power BI report published in the online service. It automatically refreshes via a schedule. I now want to set up a scheduled process which automatically emails a screenshot of the report to certain people. 

I know I can do this by setting up a subscription, but here's the tricky bit: the report has a couple of slicers for year and month. So if I set up a subscription with the slicers set to August 2026, then the screenshots will keep showing August 2026 unless I manually update the slicers.

Is there a way for me to have the slicers automatically update before the screenshot is emailed out?

I have access to Power Automate Desktop if that helps.

5 Replies

  • v-aatheeque's avatar
    v-aatheeque
    Icon for Community Support rankCommunity Support

    Hi SRJPBI​

    Thanks for reaching out to Fabric Community Forum.

    No, the slicers themselves cannot be automatically updated immediately before a standard Power BI subscription screenshot is generated. A subscription uses the report's saved filter/slicer state, so if the slicer is saved as August 2026, the subscription will continue to use that selection until the saved state is changed.

    To make the screenshot always reflect the latest month, the better approach is to move the “latest month” logic into the Power BI model/report rather than relying on a manually selected slicer value.

    For example, you can create logic in the Date/Calendar table to identify the latest completed month and use that as the report/page filter. The subscription can then run normally, while the latest-month logic updates automatically as new data is refreshed.

    Dynamic per-recipient subscriptions are another option, but they are primarily intended for applying different filter values to different recipients, rather than simply selecting the latest month.

    For this requirement, making the latest-month logic dynamic within the report/model is the simplest and most robust approach.

    Useful Links: https://learn.microsoft.com/is-is/power-bi/collaborate-share/power-bi-dynamic-report-subscriptions

  • SRJPBI​  In this case you need to Use Power Automate since the values will be dynamic. I am just listing out what are the pre-requisites below. Check out the YouTube tutorial linked below to learn how to achieve this.

    1. Create a Power Automate cloud flow.
    2. Add a Recurrence trigger.
    3. Use the Export To File for Power BI Reports action.
    4. Pass dynamic filter values for the current month (for filtering).
    5. Save the file as PNG or PDF.
    6. Send it using Send an Email (V2).

    Filter Power BI Report and Email: Now Export Power BI Reports with Filters using Power Automate by taik18 - YouTube

    • gmunoz's avatar
      gmunoz
      Frequent Visitor

      Hi Jai-Rathinavel​ 

      This is a solid approach and the YouTube walkthrough is a great reference for the setup — thanks for sharing it.

      One thing worth flagging for anyone following this thread: the "Export to File for Power BI Reports" action requires the workspace to be on dedicated Premium or Fabric capacity. Premium Per User (PPU) isn't enough for that specific action — I've seen a few cases here where people hit a "FeatureNotAvailableError" on PPU expecting it to work, so it really comes down to what capacity is actually available on the tenant.

      If Premium/Fabric isn't an option, there's a Pro + standard Power Automate variant too: instead of exporting the visual, you query the semantic model directly with Run a query against a dataset, and have the DAX query dynamically resolve the latest available month. Different output — a data table instead of a screenshot — but it runs fully on Pro. I wrote it up in more detail here if it's useful: https://blog.hogaria.tech/de-power-bi-al-correo-sin-capacidad-premium/

  • gmunoz's avatar
    gmunoz
    Frequent Visitor

    Hi SRJPBI​ ,

    If you don't strictly need the screenshot itself, there is another approach that may fit your use case.

    Instead of relying on the report subscription and changing the slicers before each email, you can query the Power BI semantic model directly from Power Automate using Run a query against a dataset. The DAX query can dynamically determine the latest available month after the dataset refresh, and the flow can then use the result to build and send the email.

    I recently wrote about this approach here:
    https://blog.hogaria.tech/de-power-bi-al-correo-sin-capacidad-premium/

    The approach uses Power BI Pro and standard Power Automate, without requiring Premium/Fabric capacity. The main idea is to keep the business logic in the Power BI model instead of trying to reproduce it in the flow.

    For your specific scenario, I would make the DAX query select the latest available year/month dynamically, so there would be no need to manually update the slicers.

  • v-aatheeque's avatar
    v-aatheeque
    Icon for Community Support rankCommunity Support

    Hi SRJPBI​ 

    Following up to confirm if the earlier responses addressed your query. If not, please share your questions and we’ll assist further.