Bonjour,
À ma connaissance, on ne peut pas masquer toutes les feuilles, on doit en garder une.
Une proposition ...
Disons que tu crées une feuille que tu nommes "Vide".
Tu peux y masquer le quadrillage, les entêtes, mettre un fond gris et même verrouiller cette feuille.
À l'ouverture du UserForm ...
- La feuille en cours est mémorisée.
- Toutes les feuilles sont masquées ... sauf la feuille "Vide".
En cliquant sur le bouton pour fermer le Userform ...
- Toutes les feuilles sont affichées.
- La feuille où l'on était à l'ouverture du Userform est sélectionnée.
Option Explicit
Dim MaFeuil As String
Private Sub Cmd_Fermer_Click()
Dim Ws As Worksheet
For Each Ws In ThisWorkbook.Worksheets
If Ws.Name <> "Vide" Then Ws.Visible = xlSheetVisible
Next Ws
Worksheets(MaFeuil).Activate
Unload Me
End Sub
Private Sub UserForm_Initialize()
Dim Ws As Worksheet
MaFeuil = ActiveSheet.Name
For Each Ws In ThisWorkbook.Worksheets
If Ws.Name <> "Vide" Then Ws.Visible = xlSheetHidden
Next Ws
End Sub
ric