Have you tried putting something simple like a message box in the QueryClose event of the userform?

Then, hopefully, when the useform is getting closed by whatever the message box would popup and you could debug from there to investigate what's going on.