Gestion affichage useform vs application Excel

Résolu
Yous00 Messages postés 36 Date d'inscription lundi 29 janvier 2007 Statut Membre Dernière intervention 17 janvier 2017 - 28 déc. 2010 à 14:31
Yous00 Messages postés 36 Date d'inscription lundi 29 janvier 2007 Statut Membre Dernière intervention 17 janvier 2017 - 29 déc. 2010 à 13:55
Bonjour,

J'ai un souci sur une macro que j'ai "trouvé" et modifié pour "cacher" ou non l'appli Excel à l'ouverture d'Excel, il n'y qu'un userfom qui doit apparaitre (ex: si il y a déjà des fichiers ouvert on ne cache pas mais dans l'autre cas on cache l'appli)
Mais la macro marche une fois sur deux, quelqu'un pourrais m'aider svp, merci
Voivi la macro a l'ouverture:

Private Sub Workbook_Open()
UserForm1.Show 0
Dim A As Integer, wk As Workbook
For Each wk In Application.Workbooks
If wk.Windows(1).Visible = True Then
A = A + 1
End If
Next
If A = 0 Then
Application.Visible = False
Else
ThisWorkbook.Windows(1).Visible = False
End If
End Sub

Cdlt
Jyb
Petit bidouilleur en excel (vba) ...

2 réponses

AlKatou Messages postés 95 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 28 novembre 2017
29 déc. 2010 à 03:01
salut,

ton problème vient de "wk.Windows(1)" car l'index définit l'ordre d'ouverture des fenêtres.
de plus, désolé mais pour ton compteur de fenêtres, il existe la fonction Count.

ce qui donne le code suivant :


Private Sub Workbook_Open()

UserForm1.Show vbModeless ' vbModeless = 0

' (Workbooks.Count > 1) renvoie Vrai ou Faux
Application.Visible = (Workbooks.Count > 1)

End Sub


Bonne continuation

AlKa
3
Yous00 Messages postés 36 Date d'inscription lundi 29 janvier 2007 Statut Membre Dernière intervention 17 janvier 2017
29 déc. 2010 à 13:55
Merci pour ton aide AlKa, cela fonctionne correctement, bonne fête ciao ciao ...

Cdlt

Jyb

Petit bidouilleur en excel (vba) ...
0