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 et retour intial [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Février 2019
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Février 2019
    Messages : 179
    Par défaut Combobox et retour intial
    Bonjour,

    Dans le code ci-dessous j'affiche une ListBox à l’initialisation du formulaire.
    Quand je sélectionne un Item dans le ComboBox, je filtre la ListBox.

    Par contre je n'arrive pas à revenir aux données à l'initialisation lorsque je ne sélectionne rien dans le ComboBox.

    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
    Dim f, bd
    Option Compare Text
    Private Sub UserForm_Initialize()
     
      Set f = Sheets("GARDE_JOUR")
      Set d = CreateObject("Scripting.Dictionary")
      bd = f.Range("A2:E" & f.[A65000].End(xlUp).Row).Value
      Tri bd, LBound(bd), UBound(bd), 3  '  tri
      Me.ListBox1.List = bd
     
      For I = LBound(bd) To UBound(bd)
         d(bd(I, 3)) = ""
      Next I
      Me.ComboBox1.List = d.keys
      Me.ListBox1.ColumnCount = 5
      Me.ListBox1.ColumnWidths = "80;30;50;50;50"
       'MsgBox ListBox1.ListCount
       Tri_ListBox
     
    End Sub
    Private Sub ComboBox1_click()
      site = Me.ComboBox1: n = 0
      Dim Tbl()
      For I = 1 To UBound(bd)
        If bd(I, 3) = site Then
            n = n + 1: ReDim Preserve Tbl(1 To UBound(bd, 2), 1 To n)
            For k = 1 To UBound(bd, 2): Tbl(k, n) = bd(I, k): Next k
         End If
      Next I
      Me.ListBox1.Column = Tbl
      Tri_ListBox
     
    End Sub

  2. #2
    Membre confirmé
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Février 2019
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Février 2019
    Messages : 179
    Par défaut
    J'ai réussi avec ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub ComboBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
       ComboBox1.ListIndex = -1
       Set f = Sheets("GARDE_JOUR")
      Set d = CreateObject("Scripting.Dictionary")
      bd = f.Range("A2:E" & f.[A65000].End(xlUp).Row).Value
      Tri bd, LBound(bd), UBound(bd), 3  '  tri
      Me.ListBox1.List = bd
    End Sub

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

Discussions similaires

  1. Multi-selection dans une ComboBox ?
    Par Moloko dans le forum MFC
    Réponses: 5
    Dernier message: 07/07/2021, 17h26
  2. Réponses: 8
    Dernier message: 12/02/2013, 01h08
  3. Retour a la ligne Combobox
    Par b0ub0u dans le forum VB.NET
    Réponses: 13
    Dernier message: 17/02/2012, 20h30
  4. [XL-2010] La ComboBox est vide au retour dans le UseForm
    Par Ceresus dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 06/11/2011, 19h51
  5. URGENT: retour de string
    Par Pinggui dans le forum CORBA
    Réponses: 4
    Dernier message: 15/07/2002, 09h47

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