I did find similar when I was testing but thought that I was looking at the wrong thing.
Because you have a userform open, Application.Visible = False only hides the workbook, not the whole application. You must have the application visible for the userform to be visible.
As a result of this, you can't close the last visible file by clicking the X in the top right corner of the window as that is trying to close the entire excel application.
Closing the last workbook by going to File > Close doesn't appear to cause any problems. Similarly closing the last visible workbook by using a close command in vba appears to work fine.
I was able to block the use of the X in the top corner when there is only 1 visible workbook by using the following code in the userform module,
VBA Code:
Private Sub Quitter_Click()
'Application.IgnoreRemoteRequests = False
'Unload RaccourciQ23
KeepOpen = False
End Sub
This in the 'ThisWorkbook module
VBA Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Cancel = KeepOpen
End Sub
and adding the line
into the Workbook_Open code.
The downside is that this means that you would need to use one of the alternative methods to close the last visible workbook.
If the above fixed the problem for you then it should be as simple as adding a quick for each workbook loop into the close event and killing the other workbook from there.