Salut
Formulaire dans quoi ? Excel, Access, Word, PowerPoint ... ?
Tu peux essayer ça :
Dim xx As Object
For Each xx In Forms
If xx.Visible Then
Debug.Print xx.Name & " est visible"
Else
Debug.Print xx.Name & " n'est pas visible"
End If
Next
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
je m'explique le pb c'est quoi,j'ai un formulaire que je le considere comme menu qui me permettre d'afficher d'autres formulaires.
lorsque j'accede à un userforme à partir du menu,je ferme mon menu (unload me)et j'affiche mon userforme (f.show)ici pas de pb.
et suite à des besoins specifiques(visualisation de la carte ...)je cache le userform(f.hide).et lorque je veux acceder au menu à nouveau,ici je veux savoir s'il y a un moyen de le fermer s'il est caché.
Attention tout de même : Si tu fermes le UserForm principal, c'est à dire celui qui t'a permis de lancer l'ouverture des autres, il y a de fortes chances que cela referme toutes les UserForm.
A essayer.
- Je n'ai rien compris aux explications de nourhanan
- je ne parviens pas non plus à deviner l'intérêt de la manoeuvre.
Je vais donc m'en tenir à l'essentiel de sa question (savoir, au bout du compte, si un UserForm, caché ou non, a été chargé).
Il suffit pour cela d'utiliser la collection Userforms, non ? ===>> For each .... ===>> et on y voit clair comme opn l'entend.