Bonjour,
Ce n'est pas l'événement Activate pour réinitialiser, mais Initialize.
Plutôt que de réinitialiser, il serait plus judicieux de créer une "Sous-Sub" dans laquelle tu mets les lignes de codes, que tu appelles quand tu en as besoin :
Private Sub UserForm_Initialize()
Call Reload_UF(Parm1, Parm2)
End Sub
Private Sub UserForm_Activate()
Call Reload_UF(Parm1, Parm2)
End Sub
Private Sub Reload_UF(P1, P2)
' Mon code de réinitialisation
End Sub
Parm1 et Parm2 étant des arguments que tu peux passer d'une procédure à l'autre pour les variables privées. Si tu ne veux pas passer d'arguments d'une procédure à l'autre, il faut définir les variables au niveau du module actif, ou d'un autre en mettant Public à la place de Dim
Benead