|Perhaps it would help if you posted the macros for us to review. Since the macros were recorded, I'm sure they contain more code than is actually needed, but it would help if we could see/test the code.|
Above the Post Reply box, you'll see the word "pre". If you click that and then paste your code between the tags, the code will retain it's current formatting and should be easier for us to read. For example, this was pasted between the pre tags:
Loop 1 of my code
Loop 2 of my code
The magic happens here
More magic happens here
End Loop 2
End Loop 1
BTW, another option might be to install "separate printers" with each one set to the desired properties.
For example, at home I have one HP printer shared on my network. I "added" the printer to our systems twice, once with the properties set to B&W, and then again with the properties set to Color. Each system has it's default printer set to use the printer with the properties set to B&W to save colored ink. If we really need to print in color, we choose the Color printer.
While we are actually choosing a different printer from the printer list, this could be automated with macros. For example, at work my default printer is a fancy network printer, but I occasionally will print to a "basic" Brother laser in my office. To do this, I just click a button on my toolbar which changes the printer to the Brother, prints and then sets my default back to the original:
ActivePrinter = "Brother HL-1440 series"
Application.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= _
wdPrintDocumentContent, Copies:=1, Pages:="", _
ActivePrinter = "\\my_network_path_goes_here\LASER13"
So maybe you could combine these 2 methods:
1 - Install multiple printers with the properties set as desired.
2 - Use a button for each printer to switch to it, print and then switch back to the "default".