Listbox avec 16 colonnes

Bonjour à tous,

Petit problème avec une listbox qui fonctionné bien jusqu'à ce que je décide d'avoir 16 colonnes. J'ai trouvé plein de solution sur le forum sans réussir à adapter à mon fichier.

Ci joint le fichier en question avec le message d'erreur

Merci d'avant Coco

116test-listbox1.xlsm (37.80 Ko)

Salut, en virant ton code et en rajoutant la déclaration du tableau ça marche :

Private Sub UserForm_Initialize()
ListBox1.RowSource = ("Listbox_cro")
End Sub

> ne pas oublier de définir le nombre de colonne (ColumnCount)

bonjour

a tester

Private Sub UserForm_Initialize()

  ListBox1.RowSource = ("Listbox_cro")
  With ListBox1
    .ColumnCount = 17
    .ColumnWidths = "85;85;85;85;85;85;85;85;85;85;85;85;85;85;85;85;0"
  End With
End Sub

CDt

Bonsoir,

Au delà de 10 colonnes. Il faut alimenter la ListBox par un tableau 2D.

Exemple

Dim a(), f

Private Sub UserForm_Initialize()

Set f = Sheets("bd")

a = f.Range("A2:M" & f.[M65000].End(xlUp).Row).Value

Me.ListBox1.List = a()

End Sub

Ceuzin

Bonsoir a tous

Merci pour votre aide, la solution de Richi2casa fonctionne super

bonjour

merci coco

Bonjour à tous,

Je cherche un moyen de supprimer une ligne de ma selection depuis ma listbox. J'ai trouvé sur les forum il vaut mieux alimenter ma list box avec additem , pour utiliser item.remove, mais avec rowsource j' ai un peu de mal....

Ci dessou mon fichier

Merci d'avance Coco

61test-listbox1.xlsm (23.80 Ko)

Si ca peut t'aider, tu rajoutes un bouton et tu ajoutes ce codes pour supprimer la ligne selectionnée

Private Sub CommandButton1_Click()
If ListBox1.ListIndex = -1 Then Exit Sub
ligne = ListBox1.ListIndex + 1
Rows(ligne + 24).Delete
Unload Me
UserForm1.Show
End Sub

Prévoit quand même que si ton tableau est vide il y aura une erreur, voir comment tu as déclarer ton tableau, mettre une condition >si le tableau est vide alors .. prévoir un entête.. etc..

EDIT : si tu veux juste supprimer la sélection tu remplace la ligne :

Rows(ligne + 24).Delete

par :

Range(Cells(ligne + 24, 1), Cells(ligne + 24, 16)).Delete

Re...

Merci pour ta solution Kide, juste un tite truc ça fonctionne pas comment je l'aurai aimé, j'aurai voulu juste effacer le contenu des cellule et non pas toute la ligne. ça j'ai trouvé à la place de .delete , j'ai mis clearcontents.

Mais il ne m'efface pas la ligne sélectionnée dans la listbox...

Explication dans le fichier ci joint.

Merci Coco

86test-listbox1.xlsm (58.00 Ko)

Ya un truc qui m'a échappé ??

Essaye avec ce code :

Private Sub CommandButton1_Click()
    If ListBox1.ListIndex = -1 Then Exit Sub
    ligne = ListBox1.ListIndex + 1
    Range(Cells(ligne + 19, 1), Cells(ligne + 19, 16)).ClearContents

    Unload Me
    UserForm1.Show
    End Sub

Ps mon nom c'est JIDE pas KIDE

BONJOUR

cree un module et copie ca

Sub Clear_Stuff()
Dim lngLastRow As Long
lngLastRow = Cells(Rows.Count, 1).End(xlUp).Row
Range("B20:P25" & lastrow).ClearContents
End Sub

cdl

Toute mes excusses Jide,

Merci pour votre aide, ca fonctionne au top.

Merci encore, et bonne année

Coco

Rechercher des sujets similaires à "listbox colonnes"