Bonjour,
Je rencontre un problème d'affichage un peu particulier qu j'aimerais vous soumettre :
J'ai une macro enregistrée dans un fichier Excel.
Elle est appelée par une application (.exe) et récupère des infos dans plusieurs fichiers excel puis les formate dans ppt.
Le but est de masquer Excel tout au long de la procédure tout en laissant s'afficher des userforms successifs permettant à l'utilisateur de faire des choix.
Cela fonctionne très bien sauf si un document Excel (qui n'a rien à voir, peu importe lequel) est déjà ouvert : tout se passe bien lors d'un premier appel, mais un deuxième appel de la macro via l'appli masque les userform.
Je ne comprends pas pourquoi cela fonctionne une fois mais pas 2.
Voici le code :
Début :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Sub Info(expfile As String) Application.Visible = False Set ExpBk = Workbooks.Open(expfile) Set ExpSht = ExpBk.Worksheets(1)
Fin :
A noter que lorsque (dans le deuxième appel) je fais Alt+Tab pour voir apparaitre les userforms, ils fonctionnent mais restent tous affichés à l'écran ( l'un derrière l'autre) alors que d'ordinaire ils doivent disparaitre avant que le suivant n'apparaissent :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 For Each Wbk In Workbooks If Wbk.FullName = "Blabla" Then Wbk.Close savechanges:=False Next Wbk ExpBk.Close savechanges:=False Application.Visible = True Application.ScreenUpdating = True End Sub
Code de fin de chaque userform :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Private Sub OKLabel_Click() '... '... Application.ScreenUpdating = True Unload Me DoEvents Application.ScreenUpdating = False Call VérifFichiers End Sub
Merci beaucoup.
Partager