Import Excel into Revit

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.

The pipeline

read Excel, write parameters to Revit
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.

Example: update door hardware specifications

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:

write hardware specs from Excel into Revit
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.

Round-trip workflow

Export the current schedule, edit in Excel, import back:

export door schedule to Excel
bim revit schedule export "Door Schedule" | bim excel write doors.xlsx

edit doors.xlsx in Excel

import updated values back into Revit
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.

Agent use

An AI coding tool can run the full round-trip without you touching the terminal:

paste into your AI coding tool
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.

Install

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.