trois Listview combinées dans un USF

CHLOE90

XLDnaute Junior
Bonsoir le forum,

J'ai recherché vainement dans vos différents échanges, une réponse à mon besoin.
En fait j'ai trouvé quelque chose d'un peu approchant avec des listebox, mais ceci ne couvrait que très partiellement ma demande.
Plutôt que de faire un long discours, j'ai renseigné dans mon classeur dans la "feuille de travail" mes explications je recherche via un Userform à combiner trois listview (listview et pas listebox car je souhaiterais distinguer certains items par couleur ou police en gras) pour au final reporter le contenu de la listview 3 vers la cellule active.

Merci à ceux d'entre vous qui auront la gentillesse de m'accorder un peu de leur temps et de leur savoir.

Bon Week End à tous.

Chloé
 

Pièces jointes

  • USF & ListeView.xlsm
    16.6 KB · Affichages: 51

CHLOE90

XLDnaute Junior
Re : trois Listview combinées dans un USF

Bonjour Kim,

Merci tout d'abord pour ce début de réponse, mais cette solution s'appuie sur des textbox et comme exprimé dans mon topic, les textbox sauf erreur de ma part ne me permettent pas "d'exporter" la selection obtenue mise en forme vers la cellule active de ma feuille.
De plus la selection multiple de famille n'est pas rendue possible par ton code.
Enfin concernant les boutons de "va et vient" entre les box 2 et 3, j'étais parvenue a trouver une solution comme celle ci proposée par PIERROT93 qui me convient, ma difficulté c'est de l'adapter à mon besoin.

Private Sub CommandButton1_Click()
Dim i As Integer
For i = ListBox1.ListCount - 1 To 0 Step -1 'modifier
If ListBox1.Selected(i) = True Then
ListBox2.AddItem (ListBox1.List(i))
ListBox1.RemoveItem (i) 'ajouter
End If
Next i
End Sub

Private Sub CommandButton2_Click()
Dim i, a As Integer
For i = 0 To ListBox1.ListCount - 1
ListBox2.AddItem (ListBox1.List(i))
Next i

ListBox1.Clear

End Sub

Private Sub CommandButton3_Click()
Dim i As Integer
For i = ListBox2.ListCount - 1 To 0 Step -1 'modifier
If ListBox2.Selected(i) = True Then
ListBox1.AddItem (ListBox2.List(i))
ListBox2.RemoveItem (i) 'ajouter
End If
Next i

End Sub

Private Sub CommandButton4_Click()
Dim i, a As Integer
For i = 0 To ListBox2.ListCount - 1
ListBox1.AddItem (ListBox2.List(i))
Next i

ListBox2.Clear

End Sub

Quoi qu'il en soit je tiens à te remercier de nouveau pour cette proposition et je vais poursuivre mes recherches en croisant les doigts qu'un autre "forumeur" ait comme toi la gentillesse de se pencher sur mon souci.

Chloé
 

CHLOE90

XLDnaute Junior
Re : trois Listview combinées dans un USF

Bonjour le Forum
Mon exercice complet à bien peu de succès , l'un d'entre vous aurait il une idée sur la dernière partie de mon problème ?
A savoir dans une listview distinguer par un format particulier certains items en leur cliquant dessus ? (en récliquant sur ce ou ces mêmes items ils retrouveraient le format standard) de façon à ce que le contenu de la listview puisse en validant l'USF venir écraser et remplacer le contenu de la cellule active de ma feuille.....en maintenant pour les items caractérisés par un format particulier (gras ou italique ....) ce même format ?
Merci pour vos réponses, sur ce point là je bloque complètement. (voir illustration dans mon classeur plus haut)
Bon dimanche
Chloé
 

Bebere

XLDnaute Barbatruc
Re : trois Listview combinées dans un USF

bonjour Chloé,Kim
un peu de patience,svp
point 1 et 2 sont faits
tu essayes surtout pour savoir si les listview ne causent pas de problèmes
 

Pièces jointes

  • USF & ListView.xlsm
    37.9 KB · Affichages: 41

CHLOE90

XLDnaute Junior
Re : trois Listview combinées dans un USF

Youpi Youpi Bebere ! Je crois que tu as saisis le sens de ma demande, merci pour ton investissement outre le résultat, je vais d'abord regarder comment tu as instruit ton code.

Pour répondre à tes questions, En cliquant sur le nom d'une famille dans la ListView1, les membres apparaissent bien dans la ListView2, le souci c'est qu'en recliquant sur le même nom de famille, j'aimerai que les noms des membres liés à cette famille dans la ListView2 disparaissent en fait ils sont générés une seconde fois dans la ListView2.
Pour compléter mes remarques :
- En sélectionnant/validant 2 fois de suite le même nom de membre dans la listview2, il apparait deux fois dans la ListView3, j'attends à ce qu'un nom ne puisse pas être transféré une seconde fois dans la ListView3 si il y est déjà.
- Je souhaiterai que la couleur rouge que tu fais appliquer dans la ListView3 puisse être appliquée si possible à plusieurs noms (ici je ne peux l'appliquer qu'à un seul) et enfin quand je clique sur le bouton "validation" seul le nom qui apparait en rouge est reporté vers la cellule active, je souhaiterai que "tous les noms" contenus dans la ListView3 soient rapportés dans la cellule active, en maintenant la police en rouge pour le ou les noms qui apparaissaient avec cette couleur de police dans la ListView3.
- Enfin, mais tu vas dire que j'exagère, comme sur ma maquette si je pouvais avoir des boutons pour mouvementer les noms de la ListView2 vers la ListeView3 et inversement ça serait le top.

Merci encore pour ton travail qui devrait bien m'aider à avancer dans mon projet.

Chloé.
 

Bebere

XLDnaute Barbatruc
Re : trois Listview combinées dans un USF

Chloé pour sélectionner plusieurs ligne dans la listview(propriété multiselect=true)
il faut enfoncer la touche Ctrl et cliquer sur les lignes à sélectionner avec la souris
refait un détail avec ce qui ne va pas pour toi
 

CHLOE90

XLDnaute Junior
Re : trois Listview combinées dans un USF

Bonjour le forum, bonjour Bebere,

Voici dans le classeur des précisions sur les détails , j'ai inséré une feuille "Détails compléments Bebere"
J'espère que j'ai été assez claire dans mes explications.

Merci encore pour ton implication.

Chloé.
 

Pièces jointes

  • USF & ListView-V1.xlsm
    163.9 KB · Affichages: 34

CHLOE90

XLDnaute Junior
Re : trois Listview combinées dans un USF

Alors là.....je n'ai qu'un mot.....Bebere is magic !!!!

MERCI MILLE FOIS BEBERE, tu me tires là d'un bien mauvais pas, je ne vois pas comment j'aurais pu me sortir de cette affaire sans ton aide précieuse.
Je vais mettre en oeuvre dès cette semaine cette pratique sur ma base de donnée pro. et je reviendrai te faire un retour.

ENCORE MERCI pour ta patience et ta disponibilité et j'espère que ce fil servira à beaucoup d'autres.

Chloé
 

Si...

XLDnaute Barbatruc
Re : trois Listview combinées dans un USF

salut

j'avais commencé (sans finir les couleurs sur la feuille) mais, plutôt que "Selected" comme Bebere :D, avec "Checked". Puisque c'est fait (avec un fonctionnement légèrement différent), voir Si... cela peut servir.
 

Pièces jointes

  • ListView_Dépendantes.xlsm
    35.9 KB · Affichages: 35

Bebere

XLDnaute Barbatruc
Re : trois Listview combinées dans un USF

bonjour Chloé,Si
Si, j'ai essayé d'ouvrir ton fichier,erreur sur userform,idem pour changer listview
Chloé,si tu sélectionnes qu'une famille,le bouton entre listview 1 et 2 peut être supprimé
changement nom du fichier,à cause de problème de syntaxe.Il y a des caractères interdis dans les noms des fichiers
 

Pièces jointes

  • UsfListView-V3.xlsm
    166.5 KB · Affichages: 42

Si...

XLDnaute Barbatruc
Re : trois Listview combinées dans un USF

salut Bebere

Encore ces problèmes avec le contrôle Listview (2007 et +) qui doivent provenir de la version de l’OCX (Mscomctl) !
Il m'arrive d'être coincé avec des fichiers téléchargés contenant ce type d’objet. Dans ce cas, je supprime le contrôle de l'Usf et le remets (en gardant les macros correspondantes).
J'ai utilisé ton dernier fichier en remplaçant tes macros par les miennes. Dis-moi, STP, si tu as le même problème d'ouverture et dans ce cas avec quelle version d'Excel.
 

Pièces jointes

  • UsfListView-V3 copie.xlsm
    159.5 KB · Affichages: 44

Bebere

XLDnaute Barbatruc
Re : trois Listview combinées dans un USF

Si j'ai essayé le fichier
pas de listview ,après décoché référence MANQUANT
mis des litview et
le code ne va pas plus loin que for each r in P
dans ton code les listview ne sont pas initialisées
code fait sous excel2003(32 bits) windows8(64bits)
cela vient sûrement de là
trouvé sur le net,pas encore testé(prévu pour ce soir),mais à 1ère vue cela ne m'aidera pas
Code:
Privé  Sous Workbook_Open () 
'utilisation variable environ pour le dossier locs 
If os =  "64bit"  Then 
    Me . VBProject . References . AddFromFile ( "C:\WINDOWS\SysWOW64\MSCOMCTL.OCX" ) 
Else 
    Me . VBProject . References . AddFromFile ( "C:\WINDOWS\system32\MSCOMCTL.OCX" ) 
End  If 
End  Sub

Private  Sub Workbook_BeforeClose ( Cancel As  Boolean ) 
    For  Each ref In  Me . VBProject . References
        If ref . Name =  "MSComctlLib"  Then 
        Me . VBProject . References . Remove ref
        Fin  Si 
        Suivant ref
 End  Sub
 

Statistiques des forums

Discussions
312 316
Messages
2 087 172
Membres
103 490
dernier inscrit
zatougraf