Bonjour,
Je fais appelle aux grands maitres, car j'ai un problème sur une de mes lignes de VBA ( si ce n'est pas les autres aussi), je bricole les lignes avec ce qui existe déjà en essayant de simplifier. ( Je reste débutante quand même).
Utilisation du fichier :
Mon fichier permet d'afficher un Userform qui prend la liste des feuilles existante du dossier d'ouverture. Une fois le choix sélectionné de la feuille, vous ne pouvez pas aller sur d'autres feuilles du fichier .
Jusqu’ici tout fonctionne, mais si vous ouvrez avant un bon fichier bien lourd pas piquet des hannetons et que vous ouvrez le fichier contenant la macro ensuite et que vous faite votre choix... Et bien une erreur 9 se déclenche ( sur la ligne ci-dessous) , me forçant à fermer tous les fichiers en cours d'utilisation.
Sheets(ListBox1.Value).Activate
Le but est d'améliorer le VBA du Userform afin de pouvoir travailler sur plusieurs fichiers en même temps et sans avoir d'erreur 9 .
En espérant avoir été le plus clair possible, j’espère acquérir plus de connaissance par vos conseils et recommandations.
Merci beaucoup,
Djidany
Voici le VBA du userform:
Option Explicit
Dim F As Worksheet
Private Sub ListBox1_Click()
Sheets(ListBox1.Value).Activate
Unload Me
Application.Visible = True
End Sub
Private Sub UserForm_initialize()
ListBox1.Clear
ActiveWindow.DisplayWorkbookTabs = False
For Each F In Worksheets
ListBox1.AddItem F.Name
Next F
End Sub
Voici le VBA du worksheet:
Private Sub Workbook_Open()
Application.Visible = False
Load UserForm1
UserForm1.Show (0)
ActiveWindow.DisplayWorkbookTabs = False
End Sub
Et le VBA du module:
Sub Affich()
'
' Affich Macro
'
ActiveWindow.DisplayWorkbookTabs = True
End Sub