Panic over.

I managed to trace the problem to a combobox object on one of the worksheets, whose _Change event was for some reason firing after the workbook closed. I'm thinking it was possibly queued up for action while the Workbook_BeforeClose event was running? If so that doesn't explain why it only happened when Excel was closing.

Adding an Application.EnableEvents = False statement did not however fix it. I had to trap the error within the combobox_Change event and just force it to fail silently.

Curious.

Apologies (and thank you) to anyone who was already in the middle of writing a reply when I posted this!