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 :

Alimenter un combobox de 9 colonnes


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
    Inscrit en
    Décembre 2012
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Décembre 2012
    Messages : 14
    Par défaut Alimenter un combobox de 9 colonnes
    Bonjour,
    J'essaie d'alimenter une combobox de 9 colonnes à partir d'un tableau de 9 colonnes, mais seulement les lignes dont la colonne G contient une date précisée dans une listbox qui est dans le même formulaire.
    J'essaie avec un tableau, mais je finis par me perdre, si vous pouviez m'aider, ce serait sympa.
    j'ai regardé plusieurs exemples, mais je n'arrive pas bien comprendre le tableau et la combo à 9 colonnes.
    Merci par avance

  2. #2
    Membre extrêmement actif
    Homme Profil pro
    Inscrit en
    Septembre 2013
    Messages
    1 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2013
    Messages : 1 369
    Par défaut
    Bonjour,

    Exemple avec 4 colonnes filtré sur une colonne(C)


    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
    Dim f, Bd()
    Option Compare Text
     
    Private Sub UserForm_Initialize()
      Set f = Sheets("bd")
      Bd = f.Range("A2:D" & f.[A65000].End(xlUp).Row).Value
      NbCol = UBound(Bd, 2)
      Me.ComboBox1.ColumnCount = NbCol
      Me.ComboBox1.ColumnWidths = "30;30;30;30"
      ville = "paris": n = 0
      Dim Tbl()
      For i = 1 To UBound(Bd)
        If Bd(i, 3) = ville Then
            n = n + 1: ReDim Preserve Tbl(1 To NbCol, 1 To n)
            For k = 1 To UBound(Bd, 2): Tbl(k, n) = Bd(i, k): Next k
         End If
      Next i
      Me.ComboBox1.Column = Tbl
    End Sub
    Boisgontier
    Images attachées Images attachées  
    Fichiers attachés Fichiers attachés

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Décembre 2012
    Messages : 14
    Par défaut
    Bonjour,
    Merci pour le code et le fichier, je regarde régulièrement sur votre site, mais si vous pouviez commenter en même temps les lignes de code. Je ne comprends pas certaines lignes. Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    n = n + 1: ReDim Preserve Tbl(1 To NbCol, 1 To n)
    For k = 1 To UBound(Bd, 2): Tbl(k, n) = Bd(i, k): Next k
    Merci par avance de votre aide.

Discussions similaires

  1. Réponses: 3
    Dernier message: 08/04/2015, 21h55
  2. Réponses: 2
    Dernier message: 30/05/2012, 19h14
  3. [XL-2010] Alimenter un ComboBox avec le contenu d'une colonne d'un fichier xls externe
    Par cryptoboss dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 24/05/2012, 15h56
  4. [ComboBox] Combobox avec plusieurs colonnes
    Par madica dans le forum Windows Forms
    Réponses: 6
    Dernier message: 15/01/2007, 12h25
  5. [VB6] [Interface] ComboBox à plusieurs colonnes
    Par mtl dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 30/03/2004, 18h35

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