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 :

Problèmes listbox multicolonnes [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Technicien amélioration Continue
    Inscrit en
    Septembre 2014
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Technicien amélioration Continue
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2014
    Messages : 32
    Par défaut Problèmes listbox multicolonnes
    bonjour,

    Je suis en train de retravailler un userform vba avec dedans deux listbox.
    La première sert de filtre pour afficher dans la listbox 2 les données.
    La listbox2 est composée de 13 colonnes.
    Je retrouve mes valeurs jusqu'à l 8ème colonne, la 9ème me sort un chiffre au lieu du texte et après 10 - 11 - 12 - 13 plus rien du tout.
    Pourriez vous m'aider sur ce ce point qui me "pourrit" la journée.

    D'avance merci pour votre aide.
    Fichiers attachés Fichiers attachés

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par xoff60 Voir le message
    Bonjour,

    Sauf erreur de ma part, on ne peut dépasser 10 colonnes dans une ListBox.

  3. #3
    Membre averti
    Homme Profil pro
    Technicien amélioration Continue
    Inscrit en
    Septembre 2014
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Technicien amélioration Continue
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2014
    Messages : 32
    Par défaut
    Comment puis je contourner le problème.
    Cette liste box me sert de moteur de recherche et lorsque je double click sur la ligne j'ouvre un userfom qui est censé me reprendre toutes les données de la ligne selectionner dans la listbox.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par xoff60 Voir le message
    Regardez la solution de Goninph dans ce post : listbox1_click-selectionner-ligne-fichier-excel

    Le principe est de concaténer plusieurs colonnes en une seule et d'appliquer une recherche sur ce champ.

  5. #5
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    il est parfaitement possible de dépasser les 10 colonnes quand on construit la liste via la propriété .List

    sur une plage filtrée, l'astuce est de copier la plage dans une nouvelle feuille pour ensuite l'injecter

    un exemple fonctionnel mais bien sûr à sécuriser au niveau du dimensionnement des colonnes car j'ai écrit en dur la dimension des 13 colonnes

    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
    Private Sub ListBox1_Click()
    Dim i As Integer, Tabl
     
    Me.ListBox2.Clear
     
    Application.ScreenUpdating = False
        With Sheets("Database")
     
            Me.ListBox2.ColumnCount = .UsedRange.Columns.Count
            Me.ListBox2.ColumnWidths = "90;90;90;90;90;90;90;90;90;90;90;90;90"
     
            .Range("A2").AutoFilter
            .Range("A2").AutoFilter 1, Me.ListBox1.Value
     
            If pl.SpecialCells(xlCellTypeVisible).Rows.Count > 0 Then
                With Worksheets.Add
                    pl.CurrentRegion.SpecialCells(xlCellTypeVisible).Copy .Cells(1, 1)
                    Me.ListBox2.List = .Cells(1, 1).CurrentRegion.Value
                    Application.DisplayAlerts = False: .Delete: Application.DisplayAlerts = True
                End With
            End If
            .Range("A2").AutoFilter
        End With
    Application.ScreenUpdating = True
    End Sub
    les 13 colonnes sont bien là

  6. #6
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par joe.levrai Voir le message
    Salut Joe,

    On ne peut donc jamais être sûr de rien.

  7. #7
    Membre averti
    Homme Profil pro
    Technicien amélioration Continue
    Inscrit en
    Septembre 2014
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Technicien amélioration Continue
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2014
    Messages : 32
    Par défaut
    Effectivement j'ai explorer cette option le problème est que je n'arrive pas a pas reprendre les données concatainer pour les séparer dans différent label à l'ouverture de l'userform (double click dans ma listbox).

  8. #8
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    Bonjour

    @Eric depuis quand les listbox ne peuvent pas avoir plus de 10 colonnes ??
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub UserForm_Activate()
    ListBox1.List = Range("A1:Z30").Value
    ListBox1.ColumnCount = 26
    End Sub
    Nom : demo12.gif
Affichages : 682
Taille : 209,6 Ko
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  9. #9
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par patricktoulon Voir le message
    Salut Patrick,

    J'ai été confronté à ce problème sur une de mes appli et je n'ai pu dépasser cette limite. Maintenant, je suis très prudent dans mes affirmations, je mets maintenant "Sauf erreur de ma part", car comme répondu à Joe, je ne suis plus sûr de rien.

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

Discussions similaires

  1. [XL-2003] Problème listbox multicolonnes
    Par buhrne dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/01/2010, 10h50
  2. [VBA-E] Problème pour remplir une listbox multicolonne
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 07/05/2007, 16h55
  3. ListBox Multicolonne à largeur variable
    Par ejaecker dans le forum Delphi
    Réponses: 2
    Dernier message: 21/07/2006, 18h32
  4. Réponses: 4
    Dernier message: 21/07/2006, 14h53
  5. Problème ListBox 'Erreur 2176'
    Par emeraudes dans le forum IHM
    Réponses: 5
    Dernier message: 19/05/2006, 17h04

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