Excel plugin
The Grunddata Excel plugin brings your business data into Excel. Load a table, edit it like a spreadsheet, and upload your changes when you are ready.
The same validation, versioning and audit rules apply whether you work in Excel, the Grunddata web app, the Google Sheets add-on, or the API.
Installing
Section titled “Installing”You can install Grunddata for Excel from the Microsoft Marketplace, or find it on the Add-ins page in Microsoft Excel. Your Grunddata or Microsoft 365 administrator may need to approve or make the plugin available to your account.
-
Install the plugin from the Microsoft Marketplace, or open Excel and find Grunddata on the Add-ins page.
-
Open or restart Excel if needed.
-
On the Home tab, select Grunddata to open the task pane.
Signing in
Section titled “Signing in”Sign in with the Microsoft account used by your organisation.
-
Open the Grunddata task pane.
-
Select Sign In.
-
Complete the sign-in window.
-
Select the environment you want to use. If there is only one environment, it is selected for you.
-
Wait for the access check to finish. The model and table selectors appear when you have access.
The task pane shows your account and the selected environment. Select Change to switch environments or Sign Out to end your session.
Loading a table
Section titled “Loading a table”Once you are signed in, choose the model and table you want to work with.
-
Select Select a Model.
-
Choose a model.
-
Select Select a Table.
-
Choose the table you want to load.
-
Wait for the records to appear in Excel.
The plugin creates a worksheet for the table. If you open the same table again, it takes you back to the worksheet you already have. You can load several tables in one workbook; each one has its own worksheet.
Use Refresh Models & Tables when you need to update the model and table lists.
Tracking a new worksheet
Section titled “Tracking a new worksheet”You can also start with a worksheet you have already designed and track it as a new Grunddata table. The plugin uses the worksheet name for the table and the header row for its attributes. It creates the table and the initial columns together before records are uploaded.
Excel formulas can be included when the worksheet is first tracked. The plugin translates supported formulas into Grunddata formulas that refer to stable table and attribute identifiers. The formula definition is stored on the attribute, while the calculated value for each row is saved in the record.
Keeping formulas stable across sheets
Section titled “Keeping formulas stable across sheets”When you track a worksheet, Grunddata converts it into a managed Excel Table and adds system columns used to synchronise records. Formulas on another worksheet that refer to columns by position can break, or start pointing to different data, when that happens.
For example, this formula uses worksheet column letters:
=SUMIF(Products!$A:$A;[@ProductID];Products!$C:$C)Use Excel Table structured references when one worksheet refers to another:
=SUMIF(tblProducts[ProductID];[@ProductID];tblProducts[PriceSEK])tblProducts[ProductID] refers to the full ProductID column. [@ProductID] refers to the
ProductID value in the current table row. Structured references follow the Excel Table and
its named columns instead of fixed worksheet column letters.
Grunddata supports Excel formulas, including formulas that use values from other tables. When
a worksheet is tracked, the plugin keeps the formula and translates its table and attribute
references into stable Grunddata identifiers. This lets formulas continue to follow the right
data when a managed table is rebuilt or its columns are rearranged. A reference to one specific
worksheet cell, such as Products!C2, cannot be translated reliably because it depends on the
worksheet position. Use table and column references instead.
Existing Excel Table names are preserved when a tracked worksheet is rebuilt, refreshed, uploaded, restored or deleted from Grunddata.
Understanding the worksheet
Section titled “Understanding the worksheet”The worksheet contains your records and a few columns that help Excel keep track of them. The attributes appear in the same order as they do in Grunddata.
| Column | What it means |
|---|---|
id |
The internal identifier for this version of a record. |
source_id |
The permanent identifier for the record. |
_status |
The result of the last upload or delete operation. |
_message |
The message returned for the row. |
code |
The record’s built-in code. |
name |
The record’s built-in name. |
| Attributes | The columns defined for the table. |
The first four columns are hidden by default. On an AUTO table, code and name are hidden
as well. The values are still there; hiding them simply keeps the worksheet easier to read.
Use Show System Columns when you need to inspect identifiers or read an upload message. Use Hide System Columns to hide them again. Settings includes Hide system columns by default.
Code and Name
Section titled “Code and Name”Every record has built-in Code and Name fields.
| Table | What you do |
|---|---|
MANUAL |
Enter both Code and Name. Both are required. |
AUTO |
Leave Code empty. Grunddata creates it for you. Name is available when needed. |
See Identifiers for more about source_id, Code and Name.
Colour coding
Section titled “Colour coding”The plugin uses colours to show what is happening in the worksheet:
| Colour | Meaning |
|---|---|
| Light orange | A row has changes waiting to be uploaded. |
| Light yellow | A cell has been changed. |
| Light green | The last operation succeeded. |
| Light red | The row or cell has an error. |
| Pale yellow | The row was skipped. |
Editing records
Section titled “Editing records”Edit the worksheet as you would any other spreadsheet. The plugin notices changes and marks the affected rows for upload.
Updating existing records
Section titled “Updating existing records”-
Change one or more editable cells in an existing row.
-
Wait for the changed cell and row to be marked.
-
Continue editing other rows if needed.
-
Select Upload Changes when you are ready to save.
Only rows with changes are uploaded. Existing records are matched using their source_id, so
editing a row creates a new version of the same record rather than a duplicate.
Adding records
Section titled “Adding records”-
Enter values in the first empty row below the existing records.
-
Fill in the required fields.
-
Leave the system columns empty.
-
Leave
Codeempty for anAUTOtable. -
Select Upload Changes.
The new row is assigned an identifier while you work. Grunddata checks the row when you upload it and reports any problems for you to fix.
Choosing domain values
Section titled “Choosing domain values”A domain attribute points to a record in another table. In Excel, the cell shows a readable
label such as SEK - Swedish krona, while Grunddata stores the referenced record’s
source_id.
Using the value picker
Section titled “Using the value picker”-
Select a cell in a domain attribute column.
-
In the Select value dialog, search by code or name.
-
Select the value you want.
If there are more results, use Load more. The selected label is written to the worksheet and the underlying reference is prepared for upload.
You can also type or paste a domain code or label. When Grunddata can find an exact match, the cell is replaced with the standard label. If it cannot find a match, the cell turns red and you can choose a value from the picker instead.
Cascading domain values
Section titled “Cascading domain values”Some domain attributes depend on another one. For example, choosing a country can limit the available regions.
When you change the parent value, the plugin updates the available child values and clears a child value that is no longer valid.
See Domain tables and Attributes.
Uploading changes
Section titled “Uploading changes”-
Select Upload Changes.
-
Review the number of changes in the Publish Changes dialog.
-
Enter a useful Commit Message, such as
Add Q3 counterparties from finance. -
Select OK.
-
Wait for the upload to finish.
The upload includes the rows you changed. While it runs, the upload button is disabled and a progress indicator is shown.
After the upload, the task pane reports how many rows were updated, inserted or rejected. Successful rows are cleared from the pending changes. Rows with errors remain so you can fix them and upload them again.
Commit history
Section titled “Commit history”Every upload, delete, and restore creates a commit for the table. A commit records the change message, time, and user, so you can review earlier versions of the table.
Select Commit History in the task pane to browse the table’s commits. You can search commit messages and load more results when needed.
Previewing a commit
Section titled “Previewing a commit”Select the preview action for a commit to open its historical records in a separate worksheet. The preview worksheet is not tracked by the plugin, so changes made there are not uploaded.
Use a preview when you need to inspect an earlier version without changing the current table.
Comparing commits
Section titled “Comparing commits”Select the compare action for a commit, then choose one of these baselines:
| Compare with | What it shows |
|---|---|
| Current table | The changes that restoring the selected commit would make. |
| Previous table commit | The changes introduced by the selected commit. |
The plugin opens a separate comparison worksheet. Added rows are green, removed rows are red and struck through, and changed cells are yellow. The comparison worksheet is not tracked by the plugin, so changes made there are not uploaded.
Restoring a commit
Section titled “Restoring a commit”Restoring returns the table records to the selected commit and creates a new commit. It does not remove the existing history.
-
Select Commit History.
-
Find the commit you want to restore.
-
Select the restore action.
-
Review the warning and enter a restore commit message.
-
Select Restore commit.
A restore can be blocked when other records still reference values that would be removed. Resolve those references first, then try again.
When a row fails
Section titled “When a row fails”A failed row turns red. Read the _message column or the message in the task pane, correct
the row, and upload it again.
| Problem | What to do |
|---|---|
| Required value is missing | Fill in the required field. |
| Domain value cannot be found | Use the value picker, or add the value to the domain table first. |
| Value is too long | Shorten it or ask an administrator to review the attribute limit. |
| Duplicate value | Check whether another record already uses the value. |
| Validation rule failed | Correct the value according to the rule. |
| Date is rejected | Use yyyy-MM-dd, or yyyy-MM-dd HH:mm for a datetime. |
Valid rows from the same upload are kept. You only need to correct and resubmit the failed rows.
See Validations and Record audit and errors.
Deleting records
Section titled “Deleting records”-
Select one or more existing record rows.
-
Select Delete Selected Rows.
-
Review the confirmation dialog.
-
Select Delete to continue, or Cancel to stop.
-
Enter a Commit Message and select OK.
New rows that have not been uploaded cannot be deleted with this action. Deleting an existing record creates a deleted version while preserving its history.
Refreshing
Section titled “Refreshing”Refreshing the lists
Section titled “Refreshing the lists”Select Refresh Models & Tables when you want to reload the available environments, models or tables. After refreshing, choose the model and table again.
Refreshing a worksheet
Section titled “Refreshing a worksheet”Select Refresh when you want to replace the worksheet with the latest data from Grunddata. If you have unsaved changes, Excel asks you to confirm first.
Other actions
Section titled “Other actions”| Action | What it does |
|---|---|
| Autofit Columns | Resizes the used columns to fit their contents. |
| Show System Columns | Shows the identifier and status columns. |
| Hide System Columns | Hides those columns again. |
| Change | Switches to another environment. |
| Sign Out | Ends your session. |
Troubleshooting
Section titled “Troubleshooting”| Symptom | What to do |
|---|---|
| Grunddata is not visible in Excel | Ask your Microsoft 365 or Grunddata administrator to make the plugin available. |
| Sign-in fails | Select Sign In again. If it continues, select Sign Out and try again. |
| No environments are available | Contact your Grunddata administrator. |
| Access is denied | Select Change and try an environment you can access, or contact your administrator. |
| Models or tables are missing | Select Refresh Models & Tables, then choose the model again. |
| A table does not load | Check your connection and access, then select the table again. |
| A domain value is red | Use Select value and choose a valid value. |
| A row is red after upload | Read _message, correct the row, and upload again. |
| Refresh asks about unsaved changes | Select Cancel to keep them, or upload them before refreshing. |