Updating mutilple parameters values using element ID

Hi,

I am trying to create an dynamo script for one the project, where i want to update multiple parameter values of the elements in the entire model using their respective element ID’s but i am getting some errors while getting updated paramater values form the excel, dynamo giving the following Warning: String.ToNumber operation failed.
Not a valid number.
Parameter name: str
even though element ID’s in the excel are in number format. can someone help me to identify where the things are going wrong.

UNIT QC_testing.xlsx (230.0 KB)

Lighting devices parameter updater from excel 23-02-2026.dyn (121.9 KB)

First obvious thing I see is index [0] of your first “string from object” node reads the word “ElementID”. Start by removing your column headers in Excel.

Hi @elton.williams , Thank you for your response. I had tried as you mentioned but getting the following result Warning: Select.ByElementId operation failed.
Unable to cast object of type ‘System.Double’ to type ‘Autodesk.Revit.DB.ElementId’.

Try integer instead of number.

Also it is good practice to get rid of
nulls and empty list imo.

Also note that some parameters are set on the Element Type or Family Symbol/Class which has a different ElementId to the element instance

Good catch. Still early for me. :face_with_hand_over_mouth:

The integer conversion fix @bvs1982 mentioned is correct. Converting those doubles to integers before the element lookup clears the cast error.

Separately: if you maintain scripts like this across multiple projects, there is an approach that skips the Excel round-trip. I built a Revit tool that handles bulk parameter updates through plain English instructions via Claude AI. You describe the category, the parameter, and the value, and it writes directly to the model. No file to update, no graph to debug when element IDs change between projects.

Here’s a short demo: https://youtu.be/SU-SKONKJ4k