Actualisé listiview selon feuille

  • Initiateur de la discussion Initiateur de la discussion poussy67
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

poussy67

XLDnaute Occasionnel
Bonjours le forum

J'ai un petit souci pour actualisé un listview. J'ai un classeur avec plusieurs
feuilles qui représente une semaine, j'ai USF avec un combobox qui me permet de selectionner une feuille (un jour de la semaine) et je ne trouve pas comment actualiser le listview selon la feuille sélectionner.

Merci d'avance au forum, pour le coup de pouce.

Cdt poussy

ci joint un exemple.
 

Pièces jointes

Re : Actualisé listiview selon feuille

Bonjour poussy67,

Dans ton module de code UserForm1, modifies tes lignes comme dans l'exemple ci-dessous :

Code:
Private Sub ComboBox1_Change()
Dim L As Integer
Dim i As Byte
Set WS = ThisWorkbook.Sheets(CStr(Me.ComboBox1))
L = WS.Range("B65536").End(xlUp).Row
For i = 15 To L
    'Me.ComboBox1.AddItem WS.Cells(i, 2)
Next
WS.Activate
[COLOR="Red"][B]MajListe[/B][/COLOR]
End Sub

Private Sub UserForm_Initialize()
'selection journée
Dim i As Byte
For i = 2 To 8
    Me.ComboBox1.AddItem ThisWorkbook.Worksheets(i).Name
Next
With Me
End With

'ListView affichage
With ListView1
    With .ColumnHeaders
       .Clear
       .Add , , "N°:", 30
       .Add , , "Codes:", 50
       .Add , , "Libellés:", 200, lvwColumnCenter
       .Add , , "Qu.:", 30
       .Add , , "N° Commnades:", 80
    End With
 .View = lvwReport
 .FullRowSelect = True
 .Gridlines = True
End With

End Sub

[COLOR="Red"][B]Sub MajListe()
On Error Resume Next
With ListView1
    .ListItems.Clear
 .View = lvwReport
 .FullRowSelect = True
 .Gridlines = True
        ' Chargement des données
        For i = 6 To ActiveSheet.Range("B65536").End(xlUp).Row
               .ListItems.Add , "A" & i, ActiveSheet.Cells(i, 1) '1ère Colonne
               .ListItems(.ListItems.Count).ListSubItems.Add , , ActiveSheet.Cells(i, 2)
               .ListItems(.ListItems.Count).ListSubItems.Add , , ActiveSheet.Cells(i, 3)
               .ListItems(.ListItems.Count).ListSubItems.Add , , ActiveSheet.Cells(i, 4)
               .ListItems(.ListItems.Count).ListSubItems.Add , , ActiveSheet.Cells(i, 5)
        Next
 .ListItems(1).Selected = False
End With
End Sub[/B][/COLOR]

Tu remarqueras que j'ai créé une procédure MajListe, que j'appelle depuis la procédure Change du ComboBox1, après sélection de la feuille dans celui-ci.
J'ai également remplacé les Sheets("Lundi") par ActiveSheet, les données sont donc lues dans la feuille active.

Espérant t'avoir aidé.

Cordialement.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
12
Affichages
489
Réponses
10
Affichages
725
Réponses
8
Affichages
830
Retour