IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Colonne dans une listview


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 275
    Par défaut Colonne dans une listview
    Bonsoir tout le monde,

    Je me permet de demander votre d'aide car je bloque.

    Je souhaite savoir pourquoi il y a un message d'erreur dans mon code vba: "erreur de compilation, Membre de méthode ou de données introuvable"

    Je Souhaiterais avoir dans ma deuxième colonne de la listview j'ai les données de la colonne B. A savoir qu'une macro me masque des lignes donc de pas les voirs apparaitre dans la listview.

    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    '--------- Procédure à placer dans le module objet du UserForm ----------------
     
    Option Explicit
     
     
     
     
     
    Private Sub ListView1_BeforeLabelEdit(Cancel As Integer)
     
    End Sub
     
    Private Sub UserForm_Initialize()
     
    Dim AA As Range, A As Range, BB As Range, B As Range
     Set AA = Worksheets("Feuil1").Range("A3:A22")
     Set BB = Worksheets("Feuil1").Range("B3:B22")
     
        'Définit les entêtes de colonnes
        With ListView1
            With .ColumnHeaders
                .Clear 'Supprime les anciens entêtes
     
                'Ajout des colonnes
                .Add , , "NOM Prénom", 100
                .Add , , "1", 40, lvwColumnCenter
                .Add , , "2", 50, lvwColumnCenter
                .Add , , "3", 60, lvwColumnCenter
                .Add , , "4", 40, lvwColumnCenter
                .Add , , "5", 50, lvwColumnCenter
                .Add , , "6", 40, lvwColumnCenter
                .Add , , "7", 40, lvwColumnCenter
                .Add , , "8", 40, lvwColumnCenter
                .Add , , "9", 60, lvwColumnCenter
                .Add , , "10", 50, lvwColumnCenter
            End With
     
            'Remplissage de la 1ere colonne (création de lignes)
             For Each A In AA
            With .ListItems
             .Add , , A.Value
            End With
             Next
            'Remplissage de la 2ere colonne (création de lignes)
             For Each B In BB
            With .ListItems(1)
             .Add , , B.Value
            End With
             Next
     
        End With
     
        ListView1.View = lvwReport 'affichage en mode Rapport
        ListView1.Gridlines = True 'affichage d'un quadrillage
        ListView1.FullRowSelect = True 'Sélection des lignes comlètes
     
     
     
    End Sub

    J'espère avoir été bien claire.

    Cordialement,

    Vincent.

  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Bonsoir,


    Sur qu'elle ligne l'erreur ?

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 275
    Par défaut
    Bonsoir,

    Sur la ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    For Each B In BB
            With .ListItems(1)
             .Add , , B.Value
            End With
             Next
    Cordialement,

    Vincent.

  4. #4
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008

  5. #5
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 275
    Par défaut
    Il me dit erreur de syntaxe

    Cordialement,

    Vincent.

    J'ai déjà été voir le lien. Et j'ai essayé plein de chose. mais rien n'y fait.

  6. #6
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 275
    Par défaut
    Bonsoir,

    C'est bon j'ai réussi ce que je voulais. Maintenant est-ce possible de masquer les lignes de ma listview qui on 0?

    Cordialement,

    Vincent.

    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    Private Sub ListView1_BeforeLabelEdit(Cancel As Integer)
     
    End Sub
     
    Private Sub UserForm_Initialize()
     
        Dim tablo As Variant, derligne As Variant
     
        On Error Resume Next
     
        derligne = Sheets("Base").Range("A65536").End(xlUp).Row
        tablo = Sheets("Base").Range("A2:X" & derligne)
     
        With UserForm1
            With .ListView1.ColumnHeaders
                .Clear
                'Ajout des colonnes
                .Add , , "NOM Prénom", 100
                .Add , , "1", 40, lvwColumnCenter
                .Add , , "2", 60, lvwColumnCenter
                .Add , , "3", 50, lvwColumnCenter
                .Add , , "4", 40, lvwColumnCenter
                .Add , , "5", 50, lvwColumnCenter
                .Add , , "6", 40, lvwColumnCenter
                .Add , , "7", 40, lvwColumnCenter
                .Add , , "8", 40, lvwColumnCenter
                .Add , , "9", 60, lvwColumnCenter
                .Add , , "10", 50, lvwColumnCenter
            End With
        End With
     
        With UserForm1
            With ListView1
                For i = UBound(tablo, 1) To LBound(tablo, 1) Step -1
                    .ListItems.Add 1, , tablo(i, 1)
                    .ListItems(1).SubItems(1) = tablo(i, 3)
                    .ListItems(1).SubItems(2) = Round(tablo(i, 4) / tablo(i, 7) * 100, 2)
                    .ListItems(1).SubItems(3) = Round(tablo(i, 3) / tablo(i, 7) * 100, 2)
                    .ListItems(1).SubItems(4) = tablo(i, 7)
                    .ListItems(1).SubItems(5) = Round(tablo(i, 7) / tablo(i, 13) / 24, 1)
                    .ListItems(1).SubItems(9) = Format(tablo(i, 13), "hh:mm:ss")
     
                Next i
            End With
     
            ListView1.View = lvwReport
            ListView1.ListItems(1).Selected = False
            Set ListView1.SelectedItem = Nothing
     
        End With
     
        On Error GoTo 0
        ListView1.View = lvwReport 'affichage en mode Rapport
        ListView1.Gridlines = True 'affichage d'un quadrillage
        ListView1.FullRowSelect = True 'Sélection des lignes comlètes
     
    End Sub
    Bonsoir,

    Je souhaiterais que les lignes de la listview soit masquer quand dans la colonne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .ListItems(1).SubItems(4) = tablo(i, 7)
    est = à 0.

    Et quand la ligne est <0 elle s'affiche.

    Cordialement,

    Vincent.

    Bonsoir,

    Quelqu'un peut m'aider. Je suis bloquer, Je souhaiterais masquer les lignes de ma listview si dans la colonne il y a 0.

    Cordialement,

    Vincent.

  7. #7
    Membre Expert
    Inscrit en
    Octobre 2010
    Messages
    1 401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 401
    Par défaut
    Citation Envoyé par vins86 Voir le message
    Bonsoir,

    Je souhaiterais que les lignes de la listview soit masquer quand dans la colonne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .ListItems(1).SubItems(4) = tablo(i, 7)
    est = à 0.

    Et quand la ligne est <0 elle s'affiche.

    Cordialement,

    Vincent.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    With ListView1
                For i = UBound(tablo, 1) To LBound(tablo, 1) Step -1
              If tablo(i, 7) <> 0 Then
                    .ListItems.Add 1, , tablo(i, 1)
                    .ListItems(1).SubItems(1) = tablo(i, 3)
                    .ListItems(1).SubItems(2) = Round(tablo(i, 4) / tablo(i, 7) * 100, 2)
                    .ListItems(1).SubItems(3) = Round(tablo(i, 3) / tablo(i, 7) * 100, 2)
                    .ListItems(1).SubItems(4) = tablo(i, 7)
                    .ListItems(1).SubItems(5) = Round(tablo(i, 7) / tablo(i, 13) / 24, 1)
                    .ListItems(1).SubItems(9) = Format(tablo(i, 13), "hh:mm:ss")
     
               End If
                Next i
            End With

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Gérer plusieurs colonnes dans une ListView
    Par christophertux dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 24/07/2009, 20h12
  2. Empêcher de modifier une colonne dans une listview
    Par Debenja dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 30/05/2009, 16h28
  3. Selectionner une colonne dans une listview
    Par jfdmagic dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 27/04/2009, 15h16
  4. Recuperer la valeur d'un colonne dans une listview
    Par skunkies dans le forum Windows Forms
    Réponses: 2
    Dernier message: 19/01/2009, 16h26
  5. Largeur d'une colonne dans une listview
    Par soso78 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 04/01/2008, 12h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo