Getting from ViewSchedule Class to the Element Ids of the elements in the schedule

I am attempting to create dynamo scripts for internal use that would allow us to edit schedules with excel and with trying to make it as user friendly as posable I may have walked myself into a corner. I currently have; the new schedule data, the ViewSchedule Class of the schedule being changed, and the location of the changed cells. My thought is that I would edit the changed parameters by using element Ids, but I cannot figure out how to get those paired with the correct rows of data. Is there a way to do this?

So you can do this in Dynamo, but I just wanted to link to a couple Revit Add-ins that achieve the same thing:

My company uses the Rushforth Tools add-in for this very purpose all the time, however the first link looks like it might be more straightforward.

  • After reviewing the links above, I think the Rushforth tools might be more applicable to your use case. This is because Rushforth Tools allows you to export to Excel, edit the data, save the file, and then import all that data back into the Revit project.

Aussi BIM Guru goes over exporting schedules to Excel.

Using the Element Ids is not ideal. Rushforth tools uses the GUID (Globally Unique Identifying Digits) instead of the Element ID’s, because the Element ID’s are not all unique. So you could be trying to call to a door, but really you end up grabbing an annotation element because it might have the same ID value.

So essentially you would use the GUID value as a dictionary key.

Hope this helps!

Thank you for the links and pointing me in the right direction. I will have to do some testing to see what would be the correct one for us.

Things to note:

  • Excel will re-format any cell value that is just numbers and might even slightly resemble a date. Then if you do not fix this, and import back into Revit, it will mess up all of your data in that schedule.

  • If this is the case for you, I’d recommend that you create your schedule as you will, and then duplicate that schedule. With the Duplicate scheduled titled the same, except for the addition of (NO DATES), just remove any parameters that are problem dates. (I usually have troubles with this when working on pharmaceutical jobs, as they are very specific in the date format.)

  • I’ve set up a script before that would export specific parameters in a specific format, and named the file depending upon the date and content. It’s definitely possible, and could be the perfect solution for your particular use. Good luck!

NOT.
Never use data from a schedule, it lacks an ID or UniqueID.
Rebuild the schedule in Dynamo by using FilterByBoleanMask and include the Id/UniqueId., then use a simple CodeBlock, (Element.SelectorById (Id, true)) and then set the value.