Build your month-end finance pack once and refresh it in a click. Keep your pivots, formulas and formatting — pull live, governed data into Excel instead of re-exporting every cycle.

Every finance team knows the month-end ritual. Pull the actuals, clean them up, re-key them into the template, reapply the formatting, rebuild the pivots, and reconcile it against last month’s version — then do the whole thing again in thirty days. This guide is about breaking that loop: building a month-end finance pack in Excel once, and refreshing it from the source with a click, instead of re-exporting and rebuilding every cycle.
Open any finance analyst’s calendar and you’ll find the same block reserved at the start of every month. The task looks small — “update the reporting pack” — but the steps behind it are anything but:
None of these steps is hard. Together, done twelve times a year, they add up to days of skilled finance time spent on data logistics instead of analysis — and each hand-off is a place for an error to creep in. Worse, the pack is stale the moment it’s built. The actuals keep moving in the source system; your exported snapshot doesn’t. By the time the pack lands in the board meeting, it’s measured against numbers that were already a few days old when they were pasted in.
The frustrating part is that the spreadsheet was never the problem. Excel is genuinely excellent for financial reporting — the flexibility to lay out a P&L exactly how leadership reads it, the pivots, the formulas, the bespoke outputs each report needs. The problem is everything that happens around the spreadsheet to get data into it.
If you’ve searched “how do I stop re-exporting data into my monthly Excel report” or “refresh an Excel report from the database automatically,” you’ve probably run into a few partial answers.
Templates alone don’t refresh. A well-built financial reporting template saves you the layout work, but it doesn’t connect to anything. You’re still pasting fresh values into it every month. It streamlines the formatting, not the data.
Power Query and a data connection help — up to a point. Excel’s Get Data experience can connect to a database or warehouse through ODBC, and once it’s set up you can press Refresh All to pull new data. That’s a real improvement over CSV exports: the data connection is reusable and the refresh is one action. But three things are still on you. First, you’re pulling raw tables and columns, so every metric — net revenue, gross margin, EBITDA — is however you chose to calculate it in the sheet, and it can drift from how the same metric is defined on the dashboards. Second, the refresh is still manual, and nothing records who’s allowed to see what — whoever holds the connection sees everything it can. Third, someone has to build and maintain that query for every report.
A raw SQL data source has the same shape. More control, same trade-off: you own the definitions, the refresh, and the governance yourself.
The pattern is clear. Getting connectivity is solved. Getting governed, defined, refreshable numbers into the report — the version that matches the board deck and follows each person’s access — is the part that’s still missing.
Here’s the outcome to aim for: you build the pack once — the P&L, the balance sheet, the KPI summary, laid out and formatted exactly how leadership reads them — and each month you open last month’s file and press Refresh. Every figure updates from the source. Your pivots re-point themselves. Your charts redraw. Your conditional formatting still works. Nothing is rebuilt, because nothing was torn down.
That only works if the numbers arriving in the sheet are (a) live, so a refresh actually pulls current data, and (b) governed, so they mean the same thing every month and match every other report. That’s what a warehouse-native BI layer adds on top of a plain data connection.
The Astrato Excel Add-in connects Excel directly to your governed data and brings it into the grid as native Excel formulas and reusable datasets. Here’s the workflow for a month-end pack. It assumes your data team has already connected Astrato to your warehouse or ERP once, at the platform level.
1. Install the Add-in and connect. Add it from Microsoft Marketplace via the Excel Home ribbon (or have IT deploy it centrally), open the Astrato panel, and sign in. Your connection lives in your Office settings, not in the file.
2. Build the datasets your report needs. In the panel, create a dataset for each part of the pack — a P&L dataset, a balance-sheet dataset, a KPI dataset. You pick dimensions, measures and fields from your governed semantic layer, so you’re choosing defined line items (net revenue, cost of sales, operating margin), not raw ledger columns. Add the filters you need — period, entity, cost centre.
3. Pull each dataset into the report. Reference a dataset from any cell and its results spill into the grid as a native table, or insert it as a formatted Excel table with currency and number formats already applied. Lay these out inside your existing income statement and balance sheet templates.
4. Build your reporting on top — as normal. Add your PivotTables, Power Pivot models, XLOOKUPs, named ranges, dynamic-array formulas, charts and conditional formatting. Because the datasets are ordinary Excel formulas underneath, everything in Excel’s toolbox works on them.
5. Next month, just refresh. Open the file and hit Refresh. Each dataset has a refresh mode, so you decide how live it is — refresh manually, refresh only when there’s no cached result, or refresh whenever the sheet recalculates. Every figure, pivot and chart updates from the source. There’s no export, no re-keying, and no rebuild.

The most common worry about “connecting Excel to live data” is that you’ll have to give up the reporting you’ve spent years perfecting. You don’t. Because the data arrives as native Excel formulas, the rest of Excel behaves exactly as it always has:
This is the whole point of doing it in real Excel rather than a lookalike: you’re not learning a new reporting tool, you’re removing the manual data step from the one you already use.
There’s a governance dividend here that matters as much as the time saved. Because every dataset is built on the same semantic layer that powers your Astrato dashboards, the “net revenue” in your Excel P&L is the same net revenue on the executive dashboard — one definition, one number, everywhere. Change how a measure is calculated once, in the model, and it updates across every report that uses it, including the pack.
That closes the oldest gap in finance reporting: the moment when the dashboard says one figure and the spreadsheet built from it says another, and the meeting turns into a debate about which is right. When both run on the same governed model, there’s nothing to reconcile.
Access follows the person, too. Every refresh respects the signed-in user’s permissions, so a regional controller opening the pack sees their entities and no one else’s — the same row-level rules your warehouse already enforces, extended into the report.
When the pack is done, you email it like any Excel file. Your credentials are never written into it — only the data. So a reviewer or an executive opens the file and reads the latest refreshed figures immediately: no login, no access request, no exposure of your connection. Because the last refresh is cached in the file, the numbers are there even offline — reading the board pack on a plane works fine. If a reviewer wants live data, they refresh with their own access.
Say your pack has three tabs — P&L, balance sheet, and a one-page KPI summary. You build it in Astrato once: a P&L dataset filtered to the current period, a balance-sheet dataset, and a KPI dataset for the headline metrics. You lay them into your existing templates, wire up the variance columns with XLOOKUP, add the period-over-period PivotTable leadership likes, and apply your red/green conditional formatting to the variance cells.
October closes. You open the September pack, change the period filter to October (or drive it from a cell so it updates everywhere at once), and press Refresh. The P&L repopulates, the variance columns recompute, the pivot updates, the KPI cards flip to October’s numbers, and the conditional formatting re-flags the lines that moved. The board pack that used to take a morning is done in minutes — and it’s measured against live data, not a three-week-old export.
A few things worth getting right:
Check out Astrato + Excel in action:
Connect the report to live, governed data instead of pasting exports. With the Astrato Excel Add-in, you build the pack once with datasets that pull from your governed model, then press Refresh each month — no export, no re-keying, no rebuild. Power Query with a database connection is a lighter alternative, but you define the metrics and manage governance yourself.
Yes. The datasets in the report are refreshable — press Refresh (or set a dataset to refresh whenever the sheet recalculates) and the figures update from the source. It’s the same idea as Power Query’s Refresh All, with governed, model-defined numbers instead of raw tables.
Yes. The data arrives as native Excel formulas, so your PivotTables, Power Pivot models, XLOOKUPs, named ranges, dynamic arrays, charts and conditional formatting all keep working. A refresh changes the numbers, not your report.
Yes — that’s the main reason to do it this way. Datasets are built on the same semantic layer that powers your dashboards, so a line item in the Excel pack is identical to the same line on the dashboard. There’s no hand-summed export to drift.
Yes. The last refresh is cached in the file, so the numbers are there offline. And your connection and credentials are never written into the file — a reviewer opens it and reads your last refresh with no login, then refreshes with their own access if they want live data.
Not from Excel today — the Add-in brings governed data into the report and refreshes it. Entering values that get committed and shared back to the source is what Astrato Data Apps handle, as a governed workflow. Writeback from Excel is coming; for now, the pack is for live, refreshable reporting on your actuals.
No SQL required in Excel. You pick defined measures and dimensions from the semantic layer in the Add-in panel; the platform handles the connection to your warehouse or ERP. Your data team sets that up once.
If your team rebuilds the same month-end pack from a fresh export every cycle, the shortest path is to try it on the pack you already have:
See how Astrato runs natively in your warehouse.