Bonjour à tous,
Une nouvelle fois je fais appel à vous car j'ai une difficulté que je ne parviens pas à comprendre.
Je travaille avec Excel 2007 sous Windows 7.
J'ai crée un UserForm dans lequel j'ai placé (entre autre) 3 ListView qui sont alimentées par des données placées sur 3 feuilles de mon classeur.
Je remplis mes ListView sans problème.
Le but est de cliquer sur un CommandButton et qu'à ce moment, un fichier Excel s'ouvre. Le nom de ce fichier étant donné par l'Item sélectionné dans l'une des ListView.
Tout cela fonctionne correctement. J'ai même placé la Multiselection à "True" pour sélectionner plusieurs fichiers en même temps.
MAIS, voici mon problème.
Si je sélectionne un Item "Fichier1" sur la ListView1, puis, changeant d'avis, je sélectionne un Item "Fichier24" sur la ListView2, le clic sur le commandButton m'ouvre le fichier "Fichier24" (c'est ce que je demande) mais il m'ouvre aussi le fichier "Fichier1" de la ListView1 alors que celui-ci n'est plus sélectionné !
Ou est mon erreur ? Pouvez-vous m'aider ?
Voici le code pour l'initialisation de mon UserForm
Voici maintenant le code lié à mon CommanButton
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 Private Sub UserForm_Initialize() ListView1.Gridlines = True Me.ListView1.CheckBoxes = True ListView1.MultiSelect = True With ListView1 With .ColumnHeaders .Clear .Add , , "Nom Facture", 130 .Add , , "Montant", 40, lvwColumnCenter .Add , , "Relance Mail", 60, lvwColumnCenter .Add , , "Relance Courrier", 70, lvwColumnCenter End With Sheets("Items ListView1").Select '.................. Remplissage de la ListView1------------------ '--------------Même démarche pour remplir les 2 autres ListView ------
Une dernière question. Je m'étais dit qu'il serait interessant de placer des CheckBoxes devant les Items et ainsi de les cocher pour sélectionner les Items ... Je ne parviens pas à trouver les "bonnes" lignes de code (C'est un peu pour cela que je me suis rabattu sur la séléction multiple).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 Private Sub CommandButton1_Click() Dim i As Integer Dim j As Integer Dim k As Integer Dim Fichier_à_ouvrir As String Dim Chemin As String For i = 1 To ListView1.ListItems.Count If ListView1.ListItems(i).Selected = True Then Fichier_à_ouvrir = ListView1.ListItems(i).Text Chemin = "D:\Dir1\Dir2\Dir3\Dir4\Dir5\" & Fichier_à_ouvrir & ".xls" Workbooks.Open Filename:=Chemin End If Next For j = 1 To ListView2.ListItems.Count If ListView2.ListItems(j).Selected = True Then Fichier_à_ouvrir = ListView2.ListItems(j).Text Chemin = "E:\Dir1\Dir2\Dir3\Dir4\Dir5\" & Fichier_à_ouvrir & ".xls" Workbooks.Open Filename:=Chemin End If Next For k = 1 To ListView3.ListItems.Count If ListView3.ListItems(k).Selected = True Then Fichier_à_ouvrir = ListView3.ListItems(k).Text Chemin = "E:\Dir1\Dir2\Dir3\Dir4\Dir5\" & Fichier_à_ouvrir & ".xls" Workbooks.Open Filename:=Chemin End If Next End Sub
Si vous avez des pistes à me proposer, je suis preneur.
Bonne soirée et bon weekend.
danad38
Partager