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 :

Combobox affichage list


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Décembre 2014
    Messages : 10
    Par défaut Combobox affichage list
    mon combobox n'affiche pas la totalité de la liste
    qui peut m'aider à résoudre le problème
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 478
    Par défaut
    Bonjour,

    Un requis pour un début de solution ici :
    http://www.developpez.net/forums/d84...s-discussions/

  3. #3
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Décembre 2014
    Messages : 10
    Par défaut
    Mon Combobox est alimenté à l'aide d'une liste "listnumber"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub UserForm_Initialize()
     
    cbop1.RowSource = "listnumber"
     
    Me.cbop1.DropDown
     
    cbop1.ListIndex = -1
     
    Sheet3.Range("I3").Value = ""
     
    End Sub
    la liste affichée n'est pas complète et renvoie des valeurs vides malgré la sélection.

  4. #4
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 171
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    En image ci-dessous, les propriétés à remplir manuellement ou par code VBA pour afficher une liste dans un contrôle ComboBox dans le cas où l'on opte pour la propriété RowSource afin de définir la source de données

    Nom : 2018 12 29 ComboBox Property.png
Affichages : 3212
Taille : 36,2 Ko

    Soit
    • RowSource : La liste (Lignes et colonnes des données sans les étiquettes de colonnes
    • ColumnHeads (True si l'on souhaite voir les étiquettes de colonnes)
    • ColumnCount : Nombre de colonnes à afficher (dans l'illustration 4)
    • ColumnWidth : Dna sune chaine de caractères, la largeur des colonnes à afficher (0 si la colonne ne doit pas être visible)


    En VBA
    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
    Option Explicit
    Dim rng As Range
    Dim rng_Data As Range
    Private Sub UserForm_Activate()
      ' Data
      Set rng = ThisWorkbook.Worksheets("Article").Range("A1").CurrentRegion
      With rng
       Set rng_Data = .Offset(1).Resize(.Rows.Count - 1)
      End With
      '
      With Me.ComboBox1
      .RowSource = rng_Data.Address(External:=True)
      .ColumnHeads = True
      .ColumnCount = 4
      .ColumnWidths = "0;50;30;30"
      End With
    End Sub
    Si la liste des données est un tableau structuré
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub UserForm_Activate()
      With Me.ComboBox1
      .RowSource = Range("T_Article").Address(External:=True)
      .ColumnHeads = True
      .ColumnCount = 4
      .ColumnWidths = "0;50;30;30"
      End With
    End Sub
    Pour en savoir plus sur les tableaux structurés, à lire Apprendre à utliser les tableaux structurés Excel : création, manipulations et avantages(1)
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  5. #5
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Décembre 2014
    Messages : 10
    Par défaut
    la liste source étant la colonne regrouper
    Nom : TBD.png
Affichages : 2870
Taille : 237,2 Ko

    la combobox n'affiche pas la valeur exacte dans la cellule I3

  6. #6
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 171
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Est-il possible de poser la bonne question dès le début.

    Voici ta question initiale
    mon combobox n'affiche pas la totalité de la liste
    Question à laquelle, je pense avoir apporté les éclaircissements te permettant d'afficher la totalité de ta liste.

    Ouvre donc une autre discussion avec cette nouvelle question
    la combobox n'affiche pas la valeur exacte dans la cellule I3
    De plus ce n'at pas la Combobox qui n'affiche pas la valeur exacte en I3 mais sans doute toi qui n'utilise pas correctement la propriété ListIndex de ce contrôle qui renvoie la valeur -1, si rien n'est sélectionné, 0 si la 1ère ligne est sélectionnée, 1 pour la deuxième et ainsi de suite.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  7. #7
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Décembre 2014
    Messages : 10
    Par défaut
    en tenant compte la première suggestion
    voilà ce qui est affiché

    Nom : TBD.png
Affichages : 2973
Taille : 134,0 Ko

    la colonne regrouper étant la colonne à afficher en combobox

  8. #8
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 171
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Pourquoi créer un UserForm qui reprend l'équivalent de la liste d'excel, j'avoue ne pas comprendre.
    Ne serait-il pas plus simple de créer une liste de Validation de données directement dans les cellules de la feuille ?

    Si tu veux afficher la colonne de l'étiquette Regrouper il faut placer comme valeur 5 à la propriété ColumnCount, ajouter la propriété ColumnBound dans l'événement Activate du UserForm et lui passer comme valeur le numéro de la colonne Regrouper et récupérer la valeur de la propriété Value lors du Click dans le ComboBox
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  9. #9
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Décembre 2014
    Messages : 10
    Par défaut
    la colonne regrouper est une colonne variable lors de la saisie en I3.
    la combobox étant donc la valeur quand va mettre dans la cellule I3.
    c'est pour ça je vous mets la pièce jointe au début pour mieux comprendre la marche du programme auquel je veux aboutir.
    merci pour votre collaboration
    je suis débutant en vba c'est pour cela que je m'adresse à des experts pour mettre une solution à mon problème
    merci pour votre compréhension

  10. #10
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    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 974

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

Discussions similaires

  1. Problème fonction affichage listes déroulantes
    Par JLDR69 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/09/2006, 19h06
  2. [VB6] Bug d'affichage liste déroulante
    Par yttrium dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 30/05/2006, 08h45
  3. [VBA-E]Erreur avec une combobox qui liste le contenu de cell
    Par Tartenpion dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 08/03/2006, 12h01
  4. [Débutant][Excel] ComboBox et liste de choix
    Par wanou44 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/12/2005, 17h36
  5. [xsl]affichage liste de 2 couleurs
    Par megane dans le forum XSL/XSLT/XPATH
    Réponses: 14
    Dernier message: 28/06/2004, 09h30

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