I know there was a request for a MACRO function in the Wishlist topic, but I'm raising this as a separate topic.
Is there a MACRO function plugin (I suspect not), or can some wizard please write one? 
I have to do a multi-step operation to correct an error, and I have several hundred of them to do, all the same set of operations.
My present problem is bolt holes in my parts, drawn as open through-holes with ringed "threading" on the hole surface. Yes, I do get carried away with detail sometimes. That shot my lines count to way over 700,000
and SU now crawls along. So, as I only have 6 bolt type components, I modified the bolts to a single surface instead of the ringed "threaded" surface, and that alone dropped my line count to under 600,000.
There are 162 bolts in the model (so far), and each bolt goes through 2 or 3 other parts, with an entity count of between 48 and 186 for each hole in each part, depending on whether it is just a hole, or is a "threaded" hole. I want to convert all these "holes" to just black circles on the surface, resulting in only 26 entities per hole (12 sided circles).
The operation for each hole, or in the case where several holes are close to each other, is to select the hole and all its bits, deselect the 2 faces of the parts surface, delete the hole bits, join 2 vertices on each opening to form a face (face does not work here), delete the those 2 lines, and finally paint the 2 (hole) faces black.
I've done about a dozen and I am freaking out. 
Now if I had a Macro that could "learn" those steps, I'd be done sooner than typing this topic. 
A cupola parameters to the Macro.
It has to "learn" the steps, by recording the operations. I'm not talking writing a set of macro instructions, as that get real hairy real fast.
There has to be a "do once" and "Repeat X times" function.
Forget about SU Undo. SU Undo is only 100 steps (I counted) and a multi-step Macro done a bunch will overrun the undo stack anyway. Well maybe keep the SU Undo for "do once" operations only. Instead, do an implicit filesave before the Macro steps execute, so if it blows up, the model is safe.
And if you want to get really functional, have an external Macro saved library that can be called up later and in other models doing the same thing.
And now back to my mods in progress...
