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 :

concatener données dans combobox


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    314
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2002
    Messages : 314
    Points : 99
    Points
    99
    Par défaut concatener données dans combobox
    Bonjour,
    j'aimerais concatener 2 colonnes d'une feuille Excel dans une combobox.

    Je remplis ma combo de cette façon
    Code dans ThisWorkbook

    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
    Private Sub Workbook_activate()
        Dim wksChoixFact As Worksheet
        Dim cboSociete As MSForms.ComboBox
        Set wksChoixFact = Worksheets("Créationfacture")
     
        wksChoixFact.Activate
     
        Set cboSociete = wksChoixFact.OLEObjects("cboSociete").Object
        With cboSociete
            .Clear
            .List = Worksheets("Société").Range("C2:C24").Value
            .ListIndex = 0
        End With
     
    End Sub
    Comment concatener les 2 colonnes de la feuille dans .list
    Merci d'avance

    FikoU

  2. #2
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 951
    Points : 5 179
    Points
    5 179
    Par défaut
    solution d'un autodidacte
    une colonne supplémentaire (cachée si nécessaire) ou tu concatène tes deux colonnes avec une espace au milieu et tu alimente ton combo depuis cette nouvelle colonne
    --------------------------------------------------------------*****----------------------------------------------------------------------------
    Bonne Continuation & Plein Succès
    Notre seul pouvoir véritable consiste à aider autrui avec modestie
    ______________________________________________________
    Pour dire merci, cliquer sur et quand la discussion est résolue, penser à cliquer sur le bouton

  3. #3
    Membre expérimenté
    Inscrit en
    Décembre 2002
    Messages
    891
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 891
    Points : 1 392
    Points
    1 392
    Par défaut
    Salut, tu pourrais créer un array et y stocker les valeurs concaténées, ensuite, tu affectes ces valeurs à .List.

    [EDIT]
    Comme j'avais un peu de temps et que je sais que l'utilisation de tableau n'est pas toujours évidente, je t'ai écrit la macro suivante:

    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
    Private Sub Workbook_activate()
        Dim wksChoixFact As Worksheet
        Dim cboSociete As MSForms.ComboBox
        Dim wsSociete As Worksheet
        Dim lastRow As Long
        Dim i As Long
        Dim combinedValues() As String
     
        Set wksChoixFact = Worksheets("Créationfacture")
        Set wsSociete = Worksheets("Société")
     
        wksChoixFact.Activate
     
        ' Déterminer le nombre de lignes non vides dans la colonne A
        lastRow = wsSociete.Cells(wsSociete.Rows.Count, "A").End(xlUp).Row
     
        ' Redimensionner le tableau des valeurs combinées
        ReDim combinedValues(1 To lastRow - 1)
     
        ' Concaténer les valeurs des colonnes A et B dans le tableau
        For i = 2 To lastRow
            combinedValues(i - 1) = wsSociete.Cells(i, 1).Value & " - " & wsSociete.Cells(i, 2).Value
        Next i
     
        ' Assigner les valeurs combinées à la combobox
        Set cboSociete = wksChoixFact.OLEObjects("cboSociete").Object
        With cboSociete
            .Clear
            .List = combinedValues
            .ListIndex = 0
        End With
    End Sub

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    314
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2002
    Messages : 314
    Points : 99
    Points
    99
    Par défaut
    Bonjour,
    Super merci,
    Existe il un évenement sur le combo pour récupérer la valeur la ligne sélectionné ?

    Merci
    FikoU

  5. #5
    Membre expérimenté
    Inscrit en
    Décembre 2002
    Messages
    891
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 891
    Points : 1 392
    Points
    1 392
    Par défaut
    Tu utilises la propriété .Value du combobox.

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    314
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2002
    Messages : 314
    Points : 99
    Points
    99
    Par défaut
    Oui bien sur, j'ai posté trop vite je cherchais au mauvais endroit.
    Evenement "click" de la feuille concernée
    Merci beaucoup tout est ok
    FikoU

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

Discussions similaires

  1. Concaténation de 2 combobox dans une autre
    Par Tintin88 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 05/12/2019, 12h06
  2. Réponses: 30
    Dernier message: 16/11/2005, 15h02
  3. checkbox dans combobox
    Par mosquitout dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 10/11/2005, 14h37
  4. []probleme affichage valeur dans combobox
    Par gup dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 23/09/2005, 09h22
  5. [debutant][awt] Pb avec ItemStateChanged dans combobox
    Par cosmos.1097 dans le forum Composants
    Réponses: 2
    Dernier message: 30/06/2005, 18h38

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