Salut le forum
Une petite explication pour toi Eric
UserForm modal / non modal. De quoi s'agit-il ?
MODAL - Par défaut, un UserForm est modal : un UserForm ouvert dans ce mode bloque l'utilisateur
dans le UserForm jusqu'à ce qu'il le ferme. Ce mode sera utilisé pour empêcher l'utilisateur
de travailler dans la feuille et/ou pour le contraindre à réaliser des actions précises.
NON MODAL - Ici, l'utilisateur peut cliquer en dehors du UserForm et travailler
avec les menus, les feuilles de calculs, ... Ce mode permet de maintenir l'affichage du UserForm
quelle que soit la feuille activée.
Exemple
Sub userform_modal()
UserForm1.Show
Msgbox "Mon UserForm"
End Sub
Quand on exécute cette procédure, le UserForm s'affiche en mode modal.
La ligne MsgBox... s'exécutera après la fermeture du UserForm.
Pour forcer le mode modal : UserForm1.Show vbModal
Sub userform_non_modal()
UserForm1.Show vbModeless
Msgbox "Mon UserForm"
End Sub
Quand on exécute cette procédure, le UserForm s'affiche en mode non modal.
La ligne MsgBox... s'exécute en séquence ! Donc, l'exécution n'est pas bloquée comme dans le cas précédent.
Mytå
P.S. Précision pour Claude
Mise en Garde Excel 97
Les objets UserForms d'Office 97 sont toujours de forme modale, le mode vbModeless (non modal) n'est pas supporté. Il existe une API capable de simuler ce mode Non Modal pour Excel 97)