Copier/ coller des données entre deux feuilles en fonction du résultat d'une listbox

pumbathekings

XLDnaute Junior
Bonjour à tous,

Avec l'aide de personnes du forum, j'ai pas mal avancé sur mon projet mais je bloque sur un nouveau point.

Lorque je selectionne des fonctions dans la listbox de mon UserForm Fonctions, les sous-fonctions relatives à ces fonctions apparaissent dans la listbox "Sousfamille" de l'userform "fonctions". (Thanks Jpb388)

Mon problème étant, j'aimerai qu'après avoir selectionné ma machine (listbox 1/ UserForm1) puis les sous-fonctions (Sousfamille/Fonctions), les équipements + poids + refs équipant les machines 1,2,3 ... soient copiés/collés dans la feuille résultat (Feuil1).

Cela vous paraitra certainement plus simple avec l'excel joint.

Merci.

Pumba
 

Pièces jointes

  • Test_fonction_test.xls
    66 KB · Affichages: 38
  • Test_fonction_test.xls
    66 KB · Affichages: 47
  • Test_fonction_test.xls
    66 KB · Affichages: 46

Yaloo

XLDnaute Barbatruc
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

Bonjour pumbathekings, le forum,

Dans ton UserForm "Fonction", tu peux sélectionner plusieurs valeurs, faut-il renvoyer toutes les valeurs ?
Dans les colonne E (SubFonctions) de tes onglets "Machine 1" et "Machine 2", tu as plusieurs fois la même référence, est-ce normal ? Si oui, faut-il renvoyer les 2 références ?

A te relire

Martial
 

Yaloo

XLDnaute Barbatruc
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

Re,

Voici ton fichier, j'en ai déduit qu'il fallait toutes les données à mes 2 questions posées précédemment.

A+

Martial

PS : J'ai ajouté une deuxième colonne à Sousfamille
 

Pièces jointes

  • Test_fonction_test.xls
    107.5 KB · Affichages: 35
  • Test_fonction_test.xls
    107.5 KB · Affichages: 42
  • Test_fonction_test.xls
    107.5 KB · Affichages: 37

pumbathekings

XLDnaute Junior
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

Bonjour Martial,

C'est exactement se que je voulais faire, par contre lorsque je mets la listbox de l'userform 1 en multiselect cela ne marche plus (j'aimerai que le copier/coller s'applique à autant de machine que sélectionnées).
Comment pourrais-je l'appliquer dans le code?

Merci beaucoup pour ton aide en tout cas.

Pumba
 

Yaloo

XLDnaute Barbatruc
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

Re,

Je m'en doutais un peu, mais comme il n'y avais pas le mutli-sélection ...

J'y regarde et te dis comment on peut faire.

A+
 

Yaloo

XLDnaute Barbatruc
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

Re,

Voir avec le fichier ci-joint

A+

Martial
 

Pièces jointes

  • Test_fonction_test.xls
    80.5 KB · Affichages: 50
  • Test_fonction_test.xls
    80.5 KB · Affichages: 48
  • Test_fonction_test.xls
    80.5 KB · Affichages: 35

pumbathekings

XLDnaute Junior
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

Bonjour Martial,

Je te remercie pour ton aide, ca marche très bien. Cependant j'ai une petite question:

Lorsque j'eassaye de transposer ton code sur mon configurateur, ce la ne marche. La localisation des données d'entrées sont les memes et pourtant je n'arrive pas à avoir ma deuxième colonne sur la listbox Sousfamille (même en rentrant en dure le numéro de colonne dans mes porpriétés listbox).
Penses tu que j'ai oublié quelque chose?

Merci

Pumba
 

Yaloo

XLDnaute Barbatruc
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

Bonjour Pumba, le forum,

As-tu aussi modifié la macro Public Sub Famille_change() ? Car il faut alimenter la 2ème colonne.

A+
 

pumbathekings

XLDnaute Junior
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

Bonjour,

Oui, j'ai bien rajouté la ligne de code:

Sousfamille.Column(1, Sousfamille.ListCount - 1) = Cells(y, 5)

En changeant bien le nom des listboxs avec les bons, mais cela ne marche toujours pas.

Ci-joint la "vraie" version de mon excel.

Tu remarqueras que dans le userform1, il y a plusieurs listbox, une de reference (la 1) et les autres pour chacune des familles. le but etant, choisir une de ref puis autant que voulue dans les famille afin de completer la feuille output

Merci

Pumba
 

Pièces jointes

  • Configurateur_V0.2-2.xlsm
    87.8 KB · Affichages: 33
  • Configurateur_V0.2-2.xlsm
    87.8 KB · Affichages: 44
  • Configurateur_V0.2-2.xlsm
    87.8 KB · Affichages: 45

Yaloo

XLDnaute Barbatruc
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

Bonjour,

Dans un premier temps, il serait bien de mettre la bonne ListBox dans Functions_change()
VB:
For i = 0 To Functions.ListCount - 1
    If Me.Functions.Selected(i) = True Then
        For Each Cel In Sheets("Functions").Range("B2:B" & Derlig)
            If Cel = Me.ListBox1.List(i) Then
                Lg = Cel.Row

Je ne suis pas allé plus loin, à toi de faire les essais.

A+
 

Yaloo

XLDnaute Barbatruc
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

Re,

Dans l'UserForm HC_Selection dans le code du bouton Validation, il ne faut pas fermer l'UserForm en question, mais juste le cacher. Car tu en as besoin pour la sélection des feuilles.

A+
 

Yaloo

XLDnaute Barbatruc
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

Re,

De plus, lorsque tu cherches la colonne avec c = Application.Match(HC_Selection.ListBox1.List(k), Feuil5.Rows(4), 0) je ne suis pas sûr que tu cherches la sélection de la bonne ListBox

A+
 

pumbathekings

XLDnaute Junior
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

Bonjour,

En effet oui, mais lorsque je remplace le nom de la feuille A1 par H1 et la cellule A1 par H1 dans la feuillle Output, je fais reference à la meme listbox et cela ne marche toujours pas.
En cachant juste l'userform1, aucun changement n'apparait

merci
 

Yaloo

XLDnaute Barbatruc
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

Dans l'UserForm HC_Selection, le nom de la feuille est bien dans une des ListBox de Studied helicopters (de ListBox6 à ListBox9) ? Et non dans Reference ?
 

pumbathekings

XLDnaute Junior
Re : Copier/ coller des données entre deux feuilles en fonction du résultat d'une lis

elle est dans toutes les feuilles en fait. une feuille sera créée pour chacun des cas et en fonction des cases selectionnées dans chaque listbox de l'userform HC_Selection, les equipements se copieront dans la feuille Output
 

Statistiques des forums

Discussions
312 196
Messages
2 086 094
Membres
103 116
dernier inscrit
kutobi87