Sorry, I missed these responses. I'm not 100% sure what you're asking/describing with it "doesn't actually end the mail merge, which seems to slow everything down." I'm also not sure about toggling the preview... I guess I'm a little lost on where you're at on this (things go in and out of my brain). But I've never actually tried to run this code, I've just assumed it's been running. When I start looking at the .MailMerge object, I'm not sure if .OpenDataSource is actually the method you want to use.

You may want to use the .Execute method off the .MailMerge object, or you might want to make some sort of use of .MailMerge.DataSource.Close.

I was mostly trying to streamline your code, and help you get it all into Excel.... but maybe there was something else having the Word code in AutoNew. At the end of the day, you want to save the RESULTS of the mail merge, rather than a copy of the mail merge template, right?

if you've already solved, maybe try posting some of the code which has gotten you closer. I'd have to take a good bit of time to try and reconstruct this whole scenario from scratch, even with the code above.