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 and edit its input cells, which save to XCubes as you go, 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.
Install the add-in
The add-in is installed from its manifest, a small XML file that tells Excel where the add-in lives. It is published at:
https://zealous-field-00f86f103.6.azurestaticapps.net/manifest.xml
Save that file to your computer, then install it in one of two ways.
For yourself, in Excel on the web:
- Open a workbook in Excel on the web.
- On the Home tab, choose Add-ins → More Add-ins.
- Open the My Add-ins tab and choose Upload My Add-in.
- Browse to the manifest you saved and choose Upload.
The panel opens, and Home → XCubes reopens it later.
For your whole organisation: a Microsoft 365 administrator deploys the add-in once, centrally, and it then appears for the chosen users in Excel on the web, on Windows and on Mac. In the Microsoft 365 admin center, go to Settings → Integrated apps, choose Upload custom apps, and give it the manifest, either as the saved file or as the link above. Pick who gets it and finish the wizard. A newly deployed add-in can take up to a day to appear in users' Excel.
Install only this manifest. A manifest from anywhere else, such as one passed around from a developer's machine, may point Excel at an address that does not exist and open an empty panel.
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.
Arrange the layout
The panel shows the cube's dimensions in a field list, laid out like Excel's PivotTable Fields pane, with Filters, Columns and Rows areas. It starts from the cube's own layout, and remembers your arrangement for that cube on this computer.
- Drag a dimension between areas, or onto another dimension to place it before that one. Order within Rows or Columns is nesting order: the first one is outermost.
- Every dimension also has a ⋯ menu to move it to another area, or up and down.
- Tick a dimension under Fields to put it on Rows. Untick it to move it to Filters.
- Each dimension in Filters shows one item, which picks the slice. Items are listed in the dimension's own order and indented by hierarchy level.
XCubes computes every layout you choose. Item order, totals, ratios and aggregation rules come from the cube, exactly as in the web grid. Excel never re-adds anything, and the cube's own saved layout is not changed.
Once a slice is on the sheet, changing the layout reloads it straight away. If the sheet has edits you have not pushed, the panel says so first. Push them, or apply the new layout and discard them.
Load to a sheet
Load to Excel writes the slice as a grid on the active sheet: a title row, the headers, then the values. Items appear in the cube's own order, and every total, subtotal and ratio is the value XCubes computed.
Values arrive as real Excel values in the item's own format:
- Numbers keep the format set on the item, such as
#,##0.00,0.0%or$#,##0, chosen as the grid chooses it: the item of the cube's primary dimension first, then an item of another row or column dimension, then the item selected in a filter, and else the cube's Settings → Format. Zeros follow the cube's "Show zero as blank": the cell keeps its 0, the format hides it. - Dates are Excel dates in the item's date pattern, so Excel can sort, filter and calculate with them.
- Booleans are
TRUEandFALSE. - Lookups, stars, progress, dropdowns and RAG show their display text.
Locked cells
The sheet is protected, without a password, so only cells you can actually change are editable. These are locked:
- calculated cells, which are also shown grey and italic
- heading rows, the title and the row and column headers
- individually locked cells, and cells your access rule makes read-only
- lookups, stars, progress, dropdowns and RAG, whose text is not their value
Everything outside the grid stays editable, so you can keep notes beside it. Inserting or deleting rows and columns is blocked, because the grid has to keep lining up with the cube. If you remove the protection yourself, a value typed into a locked cell is still never pushed.
There is no PivotTable load. An Excel PivotTable re-adds the values itself: it sums totals on top of their own parts, sums ratios, and sorts items A to Z. That contradicts the model, so the add-in does not offer it.
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 grid. Change the layout or the filter items to load a different slice. With live editing your edits are already saved. With Push, Refresh overwrites the sheet, so push any edits you want to keep first.
Edit and save
Type into the grid. Each edit is saved to XCubes when you leave the cell, and the panel shows Saved with the time. XCubes then recalculates, and the formula cells and totals on the sheet update in place. Only the cells whose value changed are rewritten, so the sheet does not redraw. Edits made within a moment of each other, such as a paste, are saved together.
Only input cells are saved. Formula cells, totals, headings and locked cells are protected, so you can't type over them.
Numbers, text, dates and booleans are saved. Type a date as Excel understands it, and
TRUEorFALSEfor a boolean. Text that Excel can't read as a date or boolean is not saved. Lookups and the other display types are locked: edit those in XCubes.The same rules as the web grid apply. Each save 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 a cell breaks one of these rules, the edits saved with it are refused too. They are put back to their earlier values, and the panel says why.
Some cells can be rejected one by one. A heading item, an invalid boolean or an unknown lookup value is put back while the rest are saved. The panel names the first one and why.
If items were added or removed in XCubes while you work, the panel asks you to Refresh Data before the sheet is updated again.
Changes made elsewhere
While a live sheet is open, changes made in XCubes appear on it within a second or two: a colleague typing in the web grid, an import, a link run. Only the cells that changed are rewritten. A cell you are still typing in is left alone, and your value is saved after it. If two people change the same cell, the last save wins, as in the web grid.
The panel shows whether it is connected. If the connection drops, it reconnects by itself and meanwhile checks for changes every 30 seconds.
Live editing needs Microsoft 365, Excel 2019 or later, or Excel on the web. Older Excel shows Push Changes to Server instead: edit, then push, and the add-in sends the cells that differ from what it loaded. A sheet reconnected after reopening a workbook also starts with Push, so the edits made while it was closed are sent first. After that push the sheet is live.
Reopen a workbook
The add-in remembers each loaded slice inside the workbook: the cube, the layout and filter items, and the values it loaded. Save the workbook, close it, and edit offline if you like. When you reopen it and open the panel on that sheet, the panel reconnects to the cube by itself. On another sheet, go to Projects and choose Reconnect on the card that names the cube.
Reconnecting does not rewrite the sheet, so unpushed edits are kept. A push still sends only the cells you edited since the load:
- Values changed in XCubes since the load are not sent back. A cell you did not edit is never pushed, even if XCubes now holds a different value. The panel says how many values changed, and the reload after the push shows them.
- Cells are matched by item, not by position. If items were reordered, each cell still goes to its own item. A cell whose item was deleted is skipped.
- Some sheets can't be pushed. The panel says so, and Refresh Data
reloads the sheet, replacing its edits:
- The cube's dimensions or the filter item no longer match the sheet.
- The slice was too large to remember the values it loaded.
Remembering works in Microsoft 365, Excel 2019 and later, and Excel on the web. In older versions the slice lasts only while the panel is open.
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 a value typed into an input cell is saved.
- Edits from Excel are not separately audited. A saved 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.