Instead of trying to reinvent the wheel, you might explore some of the solutions that have already been created.
For example, you could use a DATABASE field in a normal ‘letter’ mailmerge main document and a macro to drive the process. An outline of this approach can be found at:
http://answers.microsoft.com/en-us/o...1-1996c14dca5d
Conversely, if your workbook has a separate sheet with just a single instance of each of the grouping criteria, a DATABASE field in a normal ‘letter’ mailmerge main document could be used without the need for a macro. An outline of this approach can be found at:
https://answers.microsoft.com/en-us/...f-8642e46fa103
For a working example, see:
https://www.msofficeforums.com/mail-...-multiple.html
Alternatively, you may want to try one of the Many-to-One Mail Merge add-ins, from:
Graham Mayor at
http://www.gmayor.com/ManyToOne.htm; or
Doug Robbins at
http://bit.ly/1hduSCB