Excel add-in
The XCubes add-in puts your cubes inside Excel. It opens as a panel
(Home → XCubes) beside the workbook. From there you can load a slice of a
cube onto a sheet, edit its input cells and push the changes back, or keep
single values live in your own layout with =XCUBES.GETCELL(...).
The cube stays the model. Excel is a window onto it: formulas, roll-ups, access rules and locks all live in XCubes and apply to whatever Excel sends back.
Sign in and pick a cube
In a Microsoft 365 account the add-in signs you in with your Office identity when it can. Otherwise, enter the email and password of your XCubes account. Sign out in the panel header ends the session. The add-in then stays signed out until you sign in again or reopen Excel.
Pick a project, then a cube. The cube's own layout decides what lands on the sheet: its row dimensions become rows and its column dimensions become columns. For each page dimension you choose one item under Page Filters, which picks the slice. To see a different layout, change the cube's layout in XCubes.
Load to a sheet or a PivotTable
- Load to Excel writes the slice as a grid on the active sheet: a title row, the headers, then the values. This is the only layout you can edit and push back.
- Load as Pivot Table writes the slice as a flat table on a hidden sheet and builds a PivotTable over it. Use it to slice and chart the data with Excel's own tools. It is read-only: a PivotTable is not cell-for-cell aligned with the cube, so there is nothing safe to send back.
The panel shows Local calc when it computed the formula cells in the workbook, and Server calc when XCubes did.
Refresh
Refresh Data reloads the slice from XCubes and rewrites the sheet in the layout you loaded: a grid stays a grid, a PivotTable stays a PivotTable. Change the page filters first to reload a different slice. Refresh overwrites the sheet, so push any edits you want to keep before you refresh.
Push changes back
Edit values in the grid, then Push Changes to Server. The add-in compares the sheet with what it loaded and sends only the cells that changed.
Only input cells are sent. Formula cells and totals are computed by XCubes. Typing over one in Excel changes your sheet, not the cube.
Numbers and text are sent. Other cell types are not. Dates, booleans, lookups and the other display types are shown as their display text, which is not their stored value, so they are never read back. Edit those in XCubes.
The same rules as the web grid apply. The push goes through the same server check as typing in the grid:
- You need at least the Editor role on the project.
- Cells outside your access rule, or read-only under it, are refused.
- Cells in a period that has been submitted or approved are refused.
- Individually locked cells are refused.
If any changed cell breaks one of these rules, the whole push is refused and nothing is written. The panel says why. Undo that edit and push again.
Some cells can be rejected one by one. A heading item, an invalid boolean or an unknown lookup value is skipped while the rest of the push goes through. The panel lists how many cells were rejected and why.
After a successful push, XCubes recomputes and the add-in updates the formula cells on the sheet.
Worksheet functions
The add-in also adds functions under the XCUBES. prefix. They read from the
project you last opened in the panel. Open the panel, sign in and open a
project before using them.
| Function | Returns |
|---|---|
=XCUBES.GETCELL("Cube"; "code1"; "code2"; …) |
One cell's value. Pass one item code per dimension, in the order XCUBES.LISTDIMENSIONS lists them: row dimensions, then column, then page. |
=XCUBES.LISTCUBES() |
The project's cubes: name and description. |
=XCUBES.LISTDIMENSIONS("Cube") |
A cube's dimensions, in GETCELL argument order. |
=XCUBES.LISTITEMS("Cube"; "Dimension") |
A dimension's items: code and description. |
=XCUBES.WHOAMI() |
The signed-in user's email. |
(Use the argument separator of your Excel locale: , or ;.)
The functions recalculate when Excel recalculates (F9). They do not update
on their own when the cube changes. A #N/A result carries a tooltip, such
as "Not signed in to xCubes" or "Open a project in the xCubes taskpane first".
GETCELL reads with your own permissions. A cell outside your access rule
returns an error, not a value.
Generate Reference Sheet in the cube list writes an xCubes Reference
sheet listing every cube, dimension and item, with a ready-to-copy
GETCELL formula per cube. Running it again replaces that sheet.
What the add-in does not do
- It does not change a cube's structure: dimensions, items, formulas and layout stay in XCubes.
- It does not spread a total. Type into input cells, not totals.
- It does not write from a formula. Only Push Changes writes, and only from a grid load.
- Pushes are not separately audited. A pushed value is the same kind of write as one typed in the web grid.
See Cubes & coordinates for layout and page dimensions, and Collaboration for the roles, access rules and approval workflow a push honours.