J'ai généralement plusieurs ouvrages ouverts et sur un classur, j'ai un code VBA qui masque le classur et affiche un UserForm. Mais lorsque j'ouvre ce classur, tous mes classurs actuellement ouverts se cacheront également. Quel code puis-je utiliser pour cacher un classur?
Voici les codes que j'ai essayé:
ThisWorkbook.Application.Visible = False Windows(ThisWorkbook.name).Visible = False Application.Windows(1).visible = false
Avec Windows(ThisWorkBook.name).visible = False
fonctionne avec la fermeture d'un seul classur, il se déguise avec le classur et les feuilles ne s'affichent pas du tout. Je ne peux même pas fermer le classur Excel sans utiliser le gestionnaire de tâches.
ThisWorkbook.Application.Visible = False
va modifier la propriété Visible
de l' application exécutant votre classur, c'est-à-dire une instance d'Excel.EXE … si cette instance exécute également vos autres livres, puis, en conséquence, tous ces livres disparaîtront de écran.
Pour cacher un classur unique, utilisez
ActiveWindow.Visible = False
ou bien, si le classur que vous souhaitez cacher (p. ex. «MyWorkbook») n'est pas actif
Windows("MyWorkbook").Visible = False
Faites attention que la dissimulation d'une window déplace également le pointeur sur ActiveSheet, de même lorsque vous inversez ceci (c'est-à-dire ...Visible = True
), la feuille affichée devient active.