Fermer userform et revenir sans vider combobox

Bonjour tout le monde

J'aimerais savoir comment fermer mon userform avec (X) sans effacer le contenu de ma combobox et revenir sur le userform avec le meme contenu de la combobox. j'ai deja un bouton "quitter" qui decharge le userform quand je veux fermer totalement. Merci

Bonjour KTM,

Il suffit d'alimenter cette combobox avec Private Sub UserForm_Initialize( ) . Au démarrage de l'Userform ta combobox sera alimenter.

OUI c'est déjà fait mais là n'est pas ma préoccupation

Je voudrais après avoir fermer le userform par la croix(x), je puis conserver ce qui était affiché dans la combobox et l'afficher si je relance le userform.

Bonjour,

Comprend pas à partir du moment ou le userform sera fermé il va automatiquement se réinitialiser à la

prochaine ouverture avec les paramètres que tu as indiqué dans Private Sub UserForm_Initialize( )

Au mieux si vraiment utile ; je créerai une ligne dans un onglet caché pour stocker le dernier enregistrement,

et un second bouton "voir dernière saisie" sur ta feuille excel avec l'ouverture du userform alimenté par les données du dernier enregistrement.

J'aimerais savoir comment fermer mon userform avec (X) sans effacer le contenu de ma combobox

A priori, il suffit de le masquer avec la méthode Hide.

Merci beaucoup

Justement ce que je cherchais. Et si je voulais désactiver la fermeture par la croix(X) comment pourrais-je m'y prendre?

Il faut utiliser cette procédure événementielle:

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    If CloseMode = vbFormControlMenu Then Cancel = True
End Sub

Super Thev

Vous avez résolu mon souci.

Mais l'appétit venant en mangeant j'aimerais un autre coup de main si c'est pas trop vous demander.

J'utilise la procédure suivante pour afficher mon USF plein écran mais le contenu de mon contrôle "multipage1" n'obéit pas à la règle. Comment pourrais-je adapter "Layout " à mon multipage ? Merci

Private Sub UserForm_Layout()

decalL = (Application.Width - Me.Width) / 2

decalH = (Application.Height - Me.Height) / 2

Me.Width = Application.Width

Me.Height = Application.Height

Me.Top = 0

Me.Left = 0

For Each ctrl In Me.Controls

ctrl.Left = ctrl.Left + decalL

ctrl.Top = ctrl.Top + decalH

Next

End Sub

Rechercher des sujets similaires à "fermer userform revenir vider combobox"