I currently use SW2015 have been using this macro since probably around 2006. This macro is used to open and update the design tables for some custom properties to update and display the correct information in the BOM. It still works fine for smaller assemblies, but larger assemblies are crashing SW. The problem seems to be the GDI limit. As soon as I see it hit 10000 GDI objects in task manager, SW crashes. I've tried increasing the GDI limits in the registry, but it still crashes at 10000. So I'm wondering if there is a more efficient way of running this macro or if there are new programming commands that would work better since this macro was created so long ago. I want the macro to find every part that has a design table in the current assembly, update the design table and close the part. The current macro does not seem to be completely closing the part since the GDI count keeps rising while the macro is running. I don't have much experience with programming macros, so any help would greatly appreciated! Thanks!