Affichage dans Listview de valeurs selon choix dans un ComboBox

exene

XLDnaute Accro
Bonjour,

J'ai découvert depuis peu les listView. J'ai trouvé sur le site de Boisgontier une exemple de ce que je voudrais faire.
J'ai exporté puis importé l'UserForm et le Module et j'ai essayé d'adapter le code à mes besoins mais bien évidemment je n'obtiens pas le résultat escompté.

Quelqu'un pourrait il m'expliquer où se trouve mon erreur (code de l'UseForm ou mauvaise utilisation du code du module) ?

Ci joint un fichier test.

Merci et bonne journée.

@+
 

Pièces jointes

  • Calcul.xlsm
    58.2 KB · Affichages: 73
  • Calcul.xlsm
    58.2 KB · Affichages: 87
  • Calcul.xlsm
    58.2 KB · Affichages: 105

exene

XLDnaute Accro
Re : Affichage dans Listview de valeurs selon choix dans un ComboBox

Bonjour Jean Bernard, le forum,

Voici ce que j'obtiens sur mon poste


calcul.jpg


Surprenant

Merci pour l'aide

@+
 

Pièces jointes

  • calcul.jpg
    calcul.jpg
    74.3 KB · Affichages: 132
  • calcul.jpg
    calcul.jpg
    74.3 KB · Affichages: 126
G

Guest

Guest
Re : Affichage dans Listview de valeurs selon choix dans un ComboBox

Bonjour,

J'obtients la même chose que toi sauf si je remplace lvwReport par sa valeur réelle.

Ta bibliothèque "C:\Windows\system32\MSCOMCTL.OCX" doit être mal installée et VBA n'a pas accès aux définitions des constantes de l'objet. D'ailleurs, bien que non référencée comme "MANQUANTE" l'explorateur d'objet ne l'affiche pas chez moi.

Si je crée sur un nouveau classeur une listeView sur un userform neuf la bibliothèque Ms Windows Common controls 6 apparaît dans les références et l'explorateur d'objet affiche bien son contenu.

Code:
.View = 3 'lvwReport

Sinon pourquoi reconstruire les Headers à chaque fois.
Mettre dans userForm_Initialize:
Code:
With Me.ListView1
         .Gridlines = True
         .View = 3
        With .ColumnHeaders
            .Clear
            For k = 1 To 5
                .Add , , f.Cells(1, k), 100
            Next k
        End With
    End With
Et l'évènement click du combobox devient:
Code:
Private Sub ComboBox1_Click()
    With Me.ListView1
        .ListItems.Clear
        For lig = 1 To UBound(Tbl)
            If Tbl(lig, 1) = Me.ComboBox1 Then
                With .ListItems.Add(, , Tbl(lig, 1))
                For k = 2 To 5
                    .ListSubItems.Add , , Tbl(lig, k)
                Next k
                End With
            End If
        Next lig
        Me.TextBox1 = .ListItems.Count
    End With
End Sub

A+
 
Dernière modification par un modérateur:

exene

XLDnaute Accro
Re : Affichage dans Listview de valeurs selon choix dans un ComboBox

Re,

J'ai suivi les conseils d'Hasco et maintenant cela fonctionne bien sur le fichier. Cependant pour ma gouverne je ne comprends pas cela
.
A quoi correspond 3 ?. De plus, pour vérifier, j'ai crée un nouvel UserForm, le contrôle Listview apparait bien dans la liste mais j'ai ce message qui apparait " Bibliothèque non inscrite". Cela est préjudiciable car Office est installé sur plusieurs milliers de postes. Est ce une version low cost qui a été installé sur nos différents ordinateurs ?

Si quelqu'un a des éléments de réponse, je suis intéressé.

Merci.

Bonne journée.
 
G

Guest

Guest
Re : Affichage dans Listview de valeurs selon choix dans un ComboBox

Re,

relis correctement mon précédent post et fait des recherches sur comment installer correctement "MSCOMCTL.OCX" qui s'installe différement suivant les machine 32 ou 64 bits et versions de windows.

Mais pour faire plus simple, un listbox multicolonne est amplement suffisant. De plus il sera disponibles sur toutes les machines microsoftiennes possédant exel.

A+
 
Dernière modification par un modérateur:

exene

XLDnaute Accro
Re : Affichage dans Listview de valeurs selon choix dans un ComboBox

Re,

Je vais suivre tes conseils et me tourner vers le listbox car je n'ai aucun droit pour faire des modifications sur un ordinateur.

Encore merci pour ton aide.

Bonne fin de journée.
 

Discussions similaires

Statistiques des forums

Discussions
312 330
Messages
2 087 347
Membres
103 526
dernier inscrit
HEC