Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 checkbox cochée alors date apparait dans listbox

loul03

XLDnaute Occasionnel
Bonjour le forum

appel aux petits génies du forum!!
j'aimerais que lorsque je clique sur la checkbox "mise repro", la date de mouvement s'affiche dans la listbox en dessous.
je dois avoir un pb de code, car il me dit que les propriétés List ne sont pas bonnes

VB:
Private Sub Bt_Ajout_Click()
'si tous les controles sont renseignés
    Dim Ctrl As Control
    For Each Ctrl In Me.Controls
        If (TypeOf Ctrl Is MSForms.TextBox Or TypeOf Ctrl Is MSForms.ComboBox) Then
            If Ctrl.Name <> "com_mvt" And Ctrl.Name <> "com_lot" Then
                If Ctrl.Object.Value = "" Then
                    MsgBox "Complétez les contrôles!"
                    Exit Sub
                End If
            End If
        End If
    Next Ctrl

    'on alimente la listbox
    Me.ListBox1.AddItem Me.date_mvt
    n = Me.ListBox1.ListCount - 1
    Me.ListBox1.List(n, 1) = Me.num_trav
    Me.ListBox1.List(n, 2) = Me.num_nat
    Me.ListBox1.List(n, 3) = CDate(Me.animal_date_naissance)
    Me.ListBox1.List(n, 4) = Me.lieu_mvt
    Me.ListBox1.List(n, 5) = Me.animal_race
    Me.ListBox1.List(n, 6) = Me.animal_sexe
    Me.ListBox1.List(n, 7) = Me.animal_mere
    Me.ListBox1.List(n, 8) = Me.animal_pere
    Me.ListBox1.List(n, 9) = Me.com_mvt
    If autaureau.Value = True Then
    Me.ListBox1.List(n, 10) = CDate(Me.date_mvt)
    End If
  
    
    'on vide les controles (sauf lieu de mvt et date de mvt)
    For Each Ctrl In Me.Controls
        If (TypeOf Ctrl Is MSForms.TextBox Or TypeOf Ctrl Is MSForms.ComboBox Or TypeOf Ctrl Is MSForms.CheckBox) Then
        If Ctrl.Name <> "lieu_mvt" And Ctrl.Name <> "date_mvt" And Ctrl.Name <> "com_lot" Then
        Ctrl.Object.Value = ""
        End If
        End If
    Next Ctrl

End Sub



les text box se recopiaient bien dans la listbox (grande case blanche sous les titres dans la zone grise) mais depuis que j'ai ajouté la chexkbox (= autaureau) ça beugue à ce niveau là . j'aimerais que la case date du mouvement (=datemvt) se recopie dans la listbox sous la checkbox.





par avance merci de votre aide
loul
 

loul03

XLDnaute Occasionnel
bonjour Oneida,
j'ai indiqué cela dans les codes


Me.ListBox1.ColumnCount = 11
Me.ListBox1.ColumnWidths = "0;75;75;75;75;30;30;70;70;70;70;30"

ou trouve t on le nbr de colonnes dans les paramètres de la listebox?
 

JM27

XLDnaute Barbatruc
bonjour
il me semble qu'avec ta méthode : uniquement 10 colonnes dans une list box
ci joint un exemple : 11 colonnes =plantage

nota: et si tu postais ton fichier ? ( sans données confidentielles) on pourrait y regarder de plus près , sans avoir à refaire le contexte ( sachant que l'on peut avoir des listbox avec plus de 10 colonnes)
 

Pièces jointes

  • Classeur1.xlsm
    14.5 KB · Affichages: 4
Dernière édition:

Oneida

XLDnaute Impliqué
Bonjour a tous et toutes

VB:
    'listbox plus de 10 colonnes
    Dim t(28)   '       mettre le nombre de colonne ici 29-1
    ListBox1.Column = t
    ListBox1.ColumnCount = 28
    ListBox1.BoundColumn = 28
    ListBox1.Clear
 

Discussions similaires

Réponses
17
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…