Inserting VAV Boxes from an Excel file into Revit

familyinstance
excel
revit

#1

I’m new to Dynamo but would like to write a script to do the following:

  1. Read an excel file with a list of vav boxes, their callouts, sizes, and their Revit Family Name.

  2. Add all the vav boxes from the excel file with their appropriate familyinstance into Revit.

  3. Fill in the mechanical equipment callout field for each vav box with the callout from the excel file.

I’d appreciate any help including any resources to help me understand the concepts involved in this task.

Thanks,


#2

Welcome to the forum!

I would definitely suggest reading through the Dynamo Primer and following through all of the examples. It’s a fantastic way to get familiar with specific workflows and learn the ins and outs of the application.

Your process itself should be pretty straight forward.

  1. Reading Excel data is a very common workflow. There are plenty of posts in the forum that should be able to help you out here.
  2. You should be able to look up a specific family or family type with the Family.ByName node and create an instance that way.
  3. Pushing parameter values between elements is another common workflow. The trick to this one is making sure your elements are sorted in the correct order.

Try to get something started and come back with any specific issues you run in to.


#3

Thanks Nick for your help.

I have something started, a common problem with the “FamilyInstance.ByPoint” node that I’m using is that if I make changes in the excel file and then rerun the script, my previously placed equipment gets overwritten, ie it’s keeping the same element id. I’ve looked through the forum but wasn’t able to see if other’s have figured a fix to this or maybe there’s a different node I could use. Thoughts?VAV Placement.dyn (90.5 KB)


#4

I suggest checking out the AU class by Nat McDonald (BES225908), which uses Revit and Excel to create, size, check and re-size VAV boxes using dynamo. The scripts he uses are available in the pdf documents.