# Find and Replace

**URL:** <https://forum.dynamobim.com/t/find-and-replace/113742>\
**Category:** Revit\
**Tags:** revit, clockwork, dynamo\
**Created:** [January 22, 2026, 1:13pm UTC](https://forum.dynamobim.com/t/find-and-replace/113742 "2026-01-22T13:13:08Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![hakan.sevuk](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/hakan.sevuk/32/202464_2.png) [@hakan.sevuk](https://forum.dynamobim.com/u/hakan.sevuk)\
**Post date:** [January 22, 2026, 1:13pm UTC](https://forum.dynamobim.com/t/find-and-replace/113742/1 "2026-01-22T13:13:08Z")

</div>

![findreplace_2026-01-22_04-06-50](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/1/3/139bc9a44f9c179efc728f40c580fc78fab1d35b.png)  
Hello everyone,

I have created the Dynamo script shown below. Currently, it works on all levels, but I want it to run **only on a specific level (Level F3)**.

I tried to understand where I should define the level input or how I can filter the elements by level, but I couldn’t find the correct approach.

Could you please guide me on how to limit this script so that it works only on **Level F3**?

Thank you in advance for your help.

Revit 2026.4  
Dynamo version: 3.6.1

---

<div class="post-metadata">

**Author:** ![jacob.small](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/jacob.small/32/161030_2.png) [@jacob.small](https://forum.dynamobim.com/u/jacob.small)\
**Post date:** [January 22, 2026, 2:19pm UTC](https://forum.dynamobim.com/t/find-and-replace/113742/2 "2026-01-22T14:19:06Z")

</div>

Instead of “all elements”, why not select only the elements in the view you want to process?

---

<div class="post-metadata">

**Author:** ![hakan.sevuk](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/hakan.sevuk/32/202464_2.png) [@hakan.sevuk](https://forum.dynamobim.com/u/hakan.sevuk)\
**Post date:** [January 23, 2026, 5:34am UTC](https://forum.dynamobim.com/t/find-and-replace/113742/3 "2026-01-23T05:34:04Z")

</div>

@jacob.small I’m very new to Dynamo, and I made this progress by learning from several sources and with the help of AI. Because of this, I couldn’t fully understand what you suggested. What should I do?

---

<div class="post-metadata">

**Author:** ![Andrew\_Hannell](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/andrew_hannell/32/103315_2.png) [@Andrew\_Hannell](https://forum.dynamobim.com/u/Andrew_Hannell)\
**Post date:** [January 23, 2026, 6:23am UTC](https://forum.dynamobim.com/t/find-and-replace/113742/4 "2026-01-23T06:23:14Z")

</div>

@hakan.sevuk

@jacob.small means you would use something like the ‘All Elements in View(s)’ node from the Data-Shapes package (you would feed in a relevant view such as a floor plan)

Your graph is filtering out Generic Annotations which are view-specific. i.e they are associated with a view, not like model elements which may be associated with a level.

There are many ways to achieve what you want- such as filtering by parameters or other properties.  
As you’ve done, you might need to string together several filters

If you do want to filter model elements (associated with a level) the easiest way is probably to use an ‘All Elements at Level’ node (Rhythm package)

---

<div class="post-metadata">

**Author:** ![hakan.sevuk](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/hakan.sevuk/32/202464_2.png) [@hakan.sevuk](https://forum.dynamobim.com/u/hakan.sevuk)\
**Post date:** [January 23, 2026, 7:05am UTC](https://forum.dynamobim.com/t/find-and-replace/113742/5 "2026-01-23T07:05:14Z")

</div>

Thank you for the explanation, that makes sense now.  
I didn’t realize that Generic Annotations are view-specific and not level-based.  
I will try using **All Elements in View(s)** with an F3 floor plan instead.  
Thanks for clarifying this.

---

<div class="post-metadata">

**Author:** ![hakan.sevuk](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/hakan.sevuk/32/202464_2.png) [@hakan.sevuk](https://forum.dynamobim.com/u/hakan.sevuk)\
**Post date:** [January 23, 2026, 7:10am UTC](https://forum.dynamobim.com/t/find-and-replace/113742/6 "2026-01-23T07:10:45Z")

</div>

@Andrew_Hannell @jacob.small

I managed to get it working and changed all the F8 column numbers on Level F3 to F3. Thank you for your help.  
This is the final version of the script. However, it feels like I might be doing more steps than necessary — is that actually the case?

 ![findreplace_2026-01-23_10-08-13](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/7/a/7a1f1a54325f265a6a5aa1fdc39820e2cdcd6dcf.png)

---

<div class="post-metadata">

**Author:** ![bvs1982](https://avatars.discourse-cdn.com/v4/letter/b/43a26b/32.png) [@bvs1982](https://forum.dynamobim.com/u/bvs1982)\
**Post date:** [January 23, 2026, 7:27am UTC](https://forum.dynamobim.com/t/find-and-replace/113742/7 "2026-01-23T07:27:59Z")

</div>

> [@hakan.sevuk](#):
>
> However, it feels like I might be doing more steps than necessary — is that actually the case?

Yes.

When i am at the office i’ll give you an example of a cleaner version (unless someone beats me to it).

---

<div class="post-metadata">

**Author:** ![hakan.sevuk](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/hakan.sevuk/32/202464_2.png) [@hakan.sevuk](https://forum.dynamobim.com/u/hakan.sevuk)\
**Post date:** [January 23, 2026, 7:44am UTC](https://forum.dynamobim.com/t/find-and-replace/113742/8 "2026-01-23T07:44:59Z")

</div>

Thank you for taking the time to help. 🙏

---

<div class="post-metadata">

**Author:** ![bvs1982](https://avatars.discourse-cdn.com/v4/letter/b/43a26b/32.png) [@bvs1982](https://forum.dynamobim.com/u/bvs1982)\
**Post date:** [January 23, 2026, 8:51am UTC](https://forum.dynamobim.com/t/find-and-replace/113742/9 "2026-01-23T08:51:43Z")

</div>

![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/7/6/76adef59fff2290a64d35878ab0ee74101bb7f62.png)

No need for **(1)**. Your are already grabbing the `Generic Annotation` for that View with **(2)**.  
`Generic Annotations` are **View Specific** remember 😁.

A cleaner version (3)  
_Note you can use a Code Block for multiple inputs._

 ![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/5/4/54fa0abf900c6f19505ce73a2a3af2bf04bad7ea.png)

In case you want to filter some more (4)

 ![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/9/0/909f12f4ea95f5e7f5b2894604f868bb07d0d29f.png)

_ **Disclaimer** _  
_Didn’t get to test the examples, but those examples should work_  
_ **IF** i wired everything correctly._

---

<div class="post-metadata">

**Author:** ![hakan.sevuk](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/hakan.sevuk/32/202464_2.png) [@hakan.sevuk](https://forum.dynamobim.com/u/hakan.sevuk)\
**Post date:** [January 23, 2026, 9:03am UTC](https://forum.dynamobim.com/t/find-and-replace/113742/10 "2026-01-23T09:03:28Z")

</div>

It works perfectly, and your explanation was very clear and helpful for me.  
Thank you very much for your support. 🙏
