Most teams do this by opening an add-in, pointing it at a spreadsheet, and clicking through a mapping wizard. Or building a Dynamo graph. bim-cli is one command: pipe the spreadsheet into the model.
Pipe an Excel file into a running Revit model and update parameters across any number of elements -- no add-in UI, no Dynamo graph, no copy-paste.
bim excel read params.xlsx | bim revit param set --by Mark
{"ok":true,"updated":47,"skipped":2,"errors":0}
bim excel read streams rows from the spreadsheet as NDJSON. bim revit param set --by Mark matches each row to a Revit element by its Mark value and writes the remaining columns as parameters. Column headers must match Revit parameter names.
Your door schedule lives in Excel. Column headers match Revit parameter names:
| Mark | Hardware Set | Fire Rating | Comments |
|---|---|---|---|
| D-01 | HW-3 | 90 min | Confirmed |
| D-02 | HW-1 | 60 min | Pending |
| D-03 | HW-3 | 90 min | Confirmed |
One command writes all rows back to the model:
bim excel read door-hardware.xlsx | bim revit param set --by Mark
{"ok":true,"updated":3,"skipped":0,"errors":0}
Each column becomes a parameter write on the matched element. If a column header doesn't match a writable parameter, that column is counted in skipped and the rest continue.
Export the current schedule, edit in Excel, import back:
bim revit schedule export "Door Schedule" | bim excel write doors.xlsx
edit doors.xlsx in Excel
bim excel read doors.xlsx | bim revit param set --by Mark
The Mark column that identifies each row on export is the same key used to match elements on import. No mapping wizard, no extra config step.
An AI coding tool can run the full round-trip without you touching the terminal:
Update Revit element parameters from an Excel file using bim-cli.Step 1 -- install bim-cli if not already installed: powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "iwr -useb https://bimcli.com/install.ps1 | iex"
Step 2 -- refresh PATH: pwsh: $env:Path += ";$env:LOCALAPPDATA\bim-cli"
Step 3 -- open Revit with the model you want to update.
Step 4 -- pipe the Excel file into Revit: bim excel read params.xlsx | bim revit param set --by Mark
The Excel file must have a "Mark" column matching element Marks in the model. All other columns are written as Revit parameters by their header name. Columns that don't match a writable parameter are skipped without error.
iwr -useb https://bimcli.com/install.ps1 | iex
Works on Revit 2024, 2025, and 2026. No admin rights. No add-in install wizard. The installer places the add-in in %APPDATA%\Autodesk\Revit\Addins\ and nothing leaves your machine.