I have an application in which as many as 30 worksheets experience externally triggered Worksheet_Calculate events. The real time triggers come via a COM interface link, and are completely random. Typically there are about 200,000 events in a 6.5 hour period, so the probability that some events will be virtually simultaneous is high. Each event runs worksheet_calc code in its own sheet and calls another routine, common to all worksheets, as well.

Although the application works quite well I have concerns about concurrent events. What happens if a new calc event occurs while VBA is still executing the code triggered by the most recent prior event? Does Excel queue the events for orderly disposal? Or does the newest one interrupt any ongoing operation from the previous event? If events are not queued, what happens to them? If they are queued, how many can be stacked? Is it a FIFO or FILO queue?

I would like to understand just how Excel & VBA deal with this situation. An explanation longer than a brief overview might well be too long for the forum. So I would be happy if someone could point me to an info source, something like a Microsoft knowledge base article or the like.

Thanks for any words of wisdom you can offer.