Ecrire dans listbox multicolone

Bonjour à tous,

j'essaye de mettre en place une listbox contenant 6 colonnes (6 périodes max) et de lister le personnel participant à chaque période (stocké dans ma base)

    Acronyme = Worksheets("Manage Project").Range("C3").Value
    id_projet = Worksheets("Manage Project").Range("A1").Value

     Worksheets("Manage Project").MP_Staff_List.Clear

    Worksheets("Manage Project").MP_Staff_List.ColumnCount = 6
     LargeurCol = Array(100, 100, 100, 100, 100, 100)
    Worksheets("Manage Project").MP_Staff_List.ColumnWidths = Join(LargeurCol, ";")

     Worksheets("Manage Project").MP_Staff_List.AddItem
     toto = Worksheets("Manage Project").MP_Staff_List.ListCount - 1

For y = 2 To Sheets("Staff").Cells(Sheets("Staff").Rows.Count, 1).End(xlUp).Row

       If Sheets("Staff").Cells(y, 1) = id_projet And Sheets("Staff").Cells(y, 8) = "1" Then
     Worksheets("Manage Project").MP_Staff_List.List(toto, 0) = _
     Worksheets("Manage Project").MP_Staff_List.List(toto, 0) & Chr(13) & Chr(10) _
     & Sheets("Staff").Cells(y, 3) & " " & Sheets("Staff").Cells(y, 4)
      End If

       If Sheets("Staff").Cells(y, 1) = id_projet And Sheets("Staff").Cells(y, 8) = "2" Then
     Worksheets("Manage Project").MP_Staff_List.List(toto, 1) = _
     Worksheets("Manage Project").MP_Staff_List.List(toto, 1) & Chr(13) & Chr(10) _
     & Sheets("Staff").Cells(y, 3) & " " & Sheets("Staff").Cells(y, 4)
      End If

       Next y
       

1) cela ne m'affiche pas tout le personnel pour chaque période en effet cela ne me renvoi que le dernier en stock

2) cela m'affiche des Q

capture

Une idée de comment corriger cela svp?

merci

@+

Correctif cela m'affiche bien le personnel mais ne passe pas à la ligne.

cepandant j'ai réussi avec une textbox

With Worksheets("Manage Project").MP_Staff_List_P1
For y = 2 To Sheets("Staff").Cells(Sheets("Staff").Rows.Count, 1).End(xlUp).Row
 If Sheets("Staff").Cells(y, 1) = id_projet And Sheets("Staff").Cells(y, 8) = "1" Then
     Worksheets("Manage Project").MP_Staff_List_P1 = Worksheets("Manage Project").MP_Staff_List_P1 & Chr(13) & Chr(10) & Sheets("Staff").Cells(y, 3) & " " & Sheets("Staff").Cells(y, 4)
       End If
        Next y

Bonjour Darangel

Merci de joindre systématiquement un fichier, impossible de t'aider dans ces conditions

salut bruno,

2test.xlsm (37.43 Ko)

j'ai fais le fichier test ci-joint.

mais après réflexion ce que je veux pouvoir faire dans la listbox n'est a priori pas possible car rejoins ce que tu m'avais dis pas de retour à la ligne possible.

merci par avance

Bonne journée

@+

Salut Darkangel

Je pense qu'on ne sait pas compris un retour à la ligne dans une ligne de ListBox n'est pas possible

Mais je ne suis pas certain que ce soit ce que tu veuille, au vu du fichier.

Est-ce que tu veux voir apparaitre chaque ligne de staff dans ta ListBox ?

Sinon tu as un petit tuto ici sur ce forum : https://www.excel-pratique.com/fr/vba/controles_suite

Un exemple de ce qui est faisable de faire, mais qui ne correspond pas vraiment à ta demande, à adapter donc

14darkangel-test.xlsm (42.70 Ko)

@+

je voudrais pouvoir afficher tout le personnel engagé par période et si possible dans une seul et meme fenetre.

Re,

Je viens de voir dans ton fichier, j'ai ajouté un fichier à mon post précédent pour te montrer comment faire

A toi d'adapter, je n'ai pas le temps en ce moment

ok pas de souci merci à toi déja

je vais regarder meme si cela ne correspond pas de base à ce que je veux mais je vais tenter d'adapter et voir autrement

Rechercher des sujets similaires à "ecrire listbox multicolone"