Subsequent to my MSMQ approach, I did a project with Aspose. It's a pretty good toolkit, and I would recommend it over the MSMQ/COM+ complexity - Unless you absolutely have to automate Office, which is sometimes true.
On more recent projects in last ~12 months, I have used OpenXML.
> Just us a serialized queue using MSMQ. Write the queue listener in Javascript and register with COM+.
Sure, but now you have MSMQ and COM+ to deal with...and debugging/fixing when it breaks (under load), or isn't secured properly.
The smart folks shell out for a copy of Aspose Cells and get the job finished on time.