Copy Keynote Values to Shared Parameters

Hi All,

In Revit, it isn’t possible to schedule keynote values from linked files (no keynote tags in the host file), so I am attempting to overcome this with Dynamo.

I want to map the keynote values from the linked file(s), to shared parameters, either in the link or host file.

So far I have generated a list for each of the key values (see image) in the host but cannot figure out how to transfer these values to the shared parameters.

Any ideas???



Map Keynote Parameters in Link

1 Like

Mark, you can map them to project parameters within the current project. Once the project parameters are in the project you should just be able to use the set parameter node.

Thanks for the suggestion Danny.

I wasn’t sure exactly what you meant by this, so I attempted to add shared instance parameters to the keynote tag using dynamo.

Shared Parameter_Curtain Panel

Shared Parameter_Keynote Tag







It worked for other categories but not for keynote tags (or any tag for that matter), so I am no closer to a solution.

Essentially, all I want is for the keynote tag code and text contained in a link file to schedule in a host.




Ok, slightly more involved than I originally thought. I’m not sure this is the best way but I converted the TXT file to excel and dropped the last column. Then I loaded that into the bumblebee read excel node. From there you can filter the excel file by the keynotes and set them as project parameters. KeynoteToParameter Capture

Hi Danny,

Which .txt file are you referring to?

Mark, I was referring to the keynote text file that you are using within revit.

Thanks Danny, it worked! (for one family type)

Keynote Value Duplicate





I need to apply this process to multiple family types, so I substituted the “Family Types” node with “Categories” and “All Family Types of Category” but it failed to work

Keynote Value Duplicate 2





Any ideas on how to overcome this?



Mark, I’ve made some revisions. Try the graph below. Also, remember that the curtain wall is still a type of wall and the parameters need to be added to the wall category.


I’ve taken a slightly different approach to this problem…

The task here is to collect the “keynote value” and “keynote text” from keynote tags in the model file.

Then, list all the elements (via a multi-category schedule) to apply the shared keynote parameter to.

The idea being that when the “key value” (from the keynote tag) and "keynote (from scheduled element) match, the keynote’s associated “keynote text” can be mapped to the “keynote text placeholder” (shared parameter) of the scheduled elements.

I hope the diagram below helps to illustrate the intent - I need help to fill in the gaps.



Map Keynote Parameters from Schedule


Did you make any progress on this?

This is a creative idea/workaround to getting a key value into a tag.



Hi Craig,

No further progress since my last post.

I took a break from it over the holiday period because it was starting to fry my brain :slight_smile:

All I really need to achieve here is to schedule in a host file (which contains links only - no tags), the keynote tag values from a linked model file.

Do you have any suggestions?



Hi Mark,

I have been trying to do something similar, by getting the Keynote Text Parameter and pushing it to the Description Parameter. I have managed to get it to work for our system in a couple of ways. They both utilise SpringNodes Collector Nodes to gather information from the Keynote Legend.

First option Gathers information from a 3D View and then finds the corresponding Keynote. I have had to add in a List.DropItems node to drop off the fist item in the view list as it won’t write the information to the view categories. I have also had to remove the Empty lists and replace them with “???” or else it will come up with and error. You may find that if you run the dynamo script it may give you some errors in the final node, the good news is it stills adds the parameters, it is just telling you it cannot write to some System Families.

















The second method is pushing parameters to all of the categories in the model. I am unable to find a node that will gather all elements in the model, so I have created a large list of nodes to identify the categories in the model, hence the 34 Item lists. Even though this method is not as neat as the first, it will allow information to be pushed to detail components. It seems to work better in our workflow. You may get the same errors as before, but it is also just notifying you it won’t write to some system elements.



















Hope this helps.



Thanks Scott, that’s brilliant!

I read one of your posts a while ago regarding the keynote text parameter and attempted to follow some of the suggestions made by others but hadn’t managed to come up with a working solution.

Thanks again for your input - much appreciated.






I know this is an old post but it is the one closer to what I need.
I want to write the Keynote Text directly in the Family type, not the tag (e.g. wall type), bypassing the keynote text file. However, I don’t find that parameter in the Family Type parameters list and don’t even know if the keynote text is recorded in the type object, or only on the tag.

I was getting no response here so I made it in a new topic: Read and write on the Keynote text/description