Nested Family with selectable components (generic models) - Dynamo

Hi All!

Please help me out with below;

I’ve created a Generic Model Family with selectable components (generic model components).

After I Import my Model into the project I would like to be able to change the selectable components by using Dynamo. Is that possible?

Thank you in advanced!

It may or may not be possible, one thing is for sure, your nested families need to be Shared.


1 Like

Thank you for the advise, but still I need to figure out how to change the components with Dynamo.
I hope someone has a solution…

Here is a simple graphic to show exactly what my goal is.

Try an Element.GetParameterByName and see what the parameter looks like (including the formatting). Then try a Parameter.StorageType and look at what it’s looking for. That should get you started.

Thanks for advice JacobSmall, I already did. It’s says “ElementID” for storage type, which actually creates the problem here…

So it’s lookong for the element ID of the amily Type you’re poking to use. Get those values as an integer and you should be all set. :slight_smile:

1 Like

JacobSmall, that’s a great Idea. However I think I’m still doing something wrong It’s not working.
Please see below and advise;

Try with Select.ByElementId from Archilab package, it should work:

1 Like


I think you need the Id of the family type, not the instance.
You can get it by selecting the instance with the select model element node and use it as input for the Element.ElementType node, followed by the ElementId node.

1 Like

Thanks Licamanzoni, however I’m unable to find the command "Select.ByElement "? I’ve just downloaded the Archi-lab version 2019.2.6, 2018.13.13 and 2016.13.4 but non of these gives me what you mentioned. Please advise.

Btw I’ve also upgraded my Dynamo to V2.0.1

I have Dynamo 2.0.1 and Archilab 2019.2.6. You can find the node under Revit > Select > ByElementId

1 Like

Excellent, It worked. Thanks alot Lucamanzoni!

It works for one nested family (model) but what if I had like 100 instances with 100 different components?

Sorry for bordering but What I try to reach is as below;
I will create copies of a nested family (model), let’s say I’ve created instances of 100 No’s which has the Component-A.

And then I will import an Excel file that has all the Component names (Component-A, Component-B, Component-C… ect) let’s say 100 no’s of different names.

After that I want dynamo to change the Components for each instance (model) as per the Excel sheet.

First Instance will have Component-A
Second Instance will have Component-X
Third Instance will have Component-H
and so on…

Please advise if you have a solution…

Ok, let’s say you have 10 doors, with some different handles. You have a sheet in excel telling you which handle to use for each one. Every door has a unique number (mark parameter in revit).


With this graph you can read the information and change the nested family (the handle) for each one:

Theoretically it works, but the problems are:

  • You need to manually map your handle ID: if name is “Classic” > Id 47320, If name is “Standard” > Id 372937 etc. This part can probably be done with a Python script, but I need some time to figure it out.
  • Your handle type and your mark need to be manually associated, what’s the rule behind it? I mean, where do you get the list of handles related to each door? It would make sense the opposite: you change your handles in Revit, and then you export a schedule/table that’s telling the producer which handle to install on which door.

Hope this was the answer to your question

1 Like