I hate to ask this again, I tried once before but people got all confused using terms like synchronous/asynchronous (which should only be used in terms of buss/port communications-clocked or not), multi-tasking and multi-threading, etc.
Without all that confusion, the question is quite simple (I think)
IN ACCESS:
If I have FormA and FormB open, each has a command button that runs some VBA code.
If I press CommandButton1 on FormA, will the VBA procedure finish before I can change focus to FormB (and if not) or before CommandButton2 on Form2 can start running its procedure?
I'm at a point where I need to be sure that FormB's procedures can't run before the procedure for FormA finishes.
I guess it's also fair to ask if there are two command buttons on FormA that the first one will finish before the second can begin.
In other words, will a procedure ALWAYS finish before another procedure can start running?
Or will Access suspend (as in multi-tasking) one process to work on another (and possibly have this happen several times before a procedure finishes)?
Are there any other things that could begin like macros, timers, etc. that could interrupt a running procedure?
We already confirmed, in a prior thread, that common variables in a sub-module can be corrupted by multiple running forms (having worked around that horrible oversight of MS), and I need to make sure the same can't happen with procedures.
Because the procedures terminate so quickly on modern hardware, I haven't been able to devise a reasonable test of this.
Thanks