Dimensionner les colonnes d'une boîte de liste [Résolu]

Messages postés
8
Date d'inscription
mardi 30 septembre 2014
Dernière intervention
13 novembre 2014
- - Dernière réponse : jordane45
Messages postés
24594
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2019
- 30 sept. 2014 à 21:54
J'ai huit colonnes dans une boite de liste mais la dernière colonne ne s'affiche pas. Les informations des huits colonnes proviennent de différentes boites (texte, combo box et date)
Afficher la suite 

Votre réponse

6 réponses

Messages postés
24594
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2019
362
0
Merci
BONJOUR à toi aussi ( si si .. ça se dit toujours....... )

J'ai huit colonnes dans une boite de liste
Tu veux dire .. une LISTBOX ?

la dernière colonne ne s'affiche pas
Avec ton code... on arrivera surement mieux à voir ce qui ne fonctionne pas...
Pourrais-tu nous le montrer ?

NB: Pour poster du code sur le forum.. pense à utiliser la coloration syntaxique:
Explications disponibles ici :
http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code


.
Commenter la réponse de jordane45
Messages postés
8
Date d'inscription
mardi 30 septembre 2014
Dernière intervention
13 novembre 2014
0
Merci
Dim varRejean As Integer
Dim Vposi As Integer

Private Sub BtnLstTaux_Click()
    
    Me.Lst1.AddItem
    
    For i = 1 To 8
        Me.Lst1.List(varRejean, i) = Controls("ctrl" & i).Value
    Next i
    varRejean = varRejean + 1
End Sub

Private Sub CboTypeTaux_Change()

End Sub

Private Sub Ctrl2_Change()

End Sub

Private Sub Ctrl8_Change()

End Sub

Private Sub Lst1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    Vposi = Me.Lst1.ListIndex
    
    For i = 1 To 8
        Controls("ctrl" & i).Value = Me.Lst1.List(Vposi, i)
    Next i
    
    
End Sub
jordane45
Messages postés
24594
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2019
362 -
Et la coloration syntaxique (les balises de code)... tu n'as pas trouver où elles étaient ?????
J'édite ton message pour les ajouter et je t'invite à lire le contenu de se lien pour tes prochains messages :http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Commenter la réponse de ICTSN
Messages postés
24594
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2019
362
0
Merci
- C'est quoi ton contrôle : Lst1 ... une LISTBOX ou une LISTVIEW ? (ou autre chose ?)

- En général.. la première COLONNE est en 0 ... donc si tu as 8 colonnes.. elles vont de 0 à 7. (et non pas de 1 à 8 )


ICTSN
Messages postés
8
Date d'inscription
mardi 30 septembre 2014
Dernière intervention
13 novembre 2014
-
Il s'agit d'une listbox, j'y vois seulement les 7 premières colonnes qui sont sasies. J'ai remplacé For i = 1 To 8 par i = 1 to 7 mais ça ne fonctionne pas. Merci pour votre aide
jordane45
Messages postés
24594
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2019
362 -
Et comment initialises-tu ta listbox.
Quel code as tu utilisé ?
ICTSN
Messages postés
8
Date d'inscription
mardi 30 septembre 2014
Dernière intervention
13 novembre 2014
-
excel vba, chaque ligne de la listbox se rempli avec des textbox (4), des combobox (2) et des Dtpicker (2). dans les programmations elles se nomment ctrl 1 à 8
Commenter la réponse de jordane45
Messages postés
8
Date d'inscription
mardi 30 septembre 2014
Dernière intervention
13 novembre 2014
0
Merci
Les données de la listbox proviennent de boites nommées ctrl 1 à 8
Private Sub BtnLstTaux_Click()
    
    Me.Lst1.AddItem
    
    For i = 1 To 8
        Me.Lst1.List(varRejean, i) = Controls("ctrl" & i).Value
    Next i
    varRejean = varRejean + 1
End Sub


EDIT : AJOUT DES BALISES DE CODE ... ENCORE !
(jordane)
Commenter la réponse de ICTSN
Messages postés
24594
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2019
362
0
Merci
En fait ça vient de ton nombre de colonnes...

AddItem .. ajoute à la première colonne...(indice 0 )
Puis ta boucle 1 to 8 .. ajoute les données dans les colonnes 1 à 8 ..soit 9 colonnes..

Testes ceci :
(places une ListBox dans un Userform et mets ce code dans l'Initialisation de ton USF)

Private Sub UserForm_Initialize()
Dim i As Byte, j As Byte

 ListBox1.ColumnCount = 9
 ListBox1.ColumnWidths = "70;70;70;70;70;70;70;70;70"


For i = 1 To 20
        'Ajoute une ligne et insère une donnée dans la colonne de gauche
        ListBox1.AddItem "Ligne:" & i & "- Col:0"
        
        'Ajoute des données dans les colonnes de droite
        For j = 1 To 8
         ListBox1.List(ListBox1.ListCount - 1, j) = "Ligne:" & i & "- Col:" & j
        Next j
Next i

End Sub


jordane45
Messages postés
24594
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2019
362 -
Ce qui... au niveau de ton code donne :


Private Sub BtnLstTaux_Click()
    
    Me.Lst1.AddItem Controls("ctrl1").Value
    
    For i = 2 To 8
        Me.Lst1.List(varRejean, i-1) = Controls("ctrl" & i).Value
    Next i
    varRejean = varRejean + 1
End Sub

Commenter la réponse de jordane45
Messages postés
8
Date d'inscription
mardi 30 septembre 2014
Dernière intervention
13 novembre 2014
0
Merci
Merci beaucoup, de fait j'ai 8 colonnes à incrémenter donc je n'en ai pas besoin de neuf, j'ai modifié votre code en inscrivant columncount = 8. Me reste maintenant a adapter le reste du code pour l'incrémentation de la liste.
jordane45
Messages postés
24594
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2019
362 -
Bonjour,
Evite de mettre tes réponses ern Commentaire du premier message...utilises le bouton REPONDRE en bas de la page.
(je viens de déplacer ton précédent message).

Et si la question est résolue.. merci de clore le sujet ( Lien Marquer comme résolu .. en haut de la page sous le titre de ta question.)

Merci.

@+
jordane45
Messages postés
24594
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 février 2019
362 -
Commenter la réponse de ICTSN

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.