Excel dupliquer des lignes

Fermé
dram15 Messages postés 7 Date d'inscription lundi 3 décembre 2012 Statut Membre Dernière intervention 5 décembre 2012 - 3 déc. 2012 à 16:19
dram15 Messages postés 7 Date d'inscription lundi 3 décembre 2012 Statut Membre Dernière intervention 5 décembre 2012 - 5 déc. 2012 à 10:44
Bonjour,

Je cherche à créer une macro permettant de dupliquer des lignes.

Supposons j'ai une feuille avec plusieurs colonnes:

Avant
Colonne 1 Colonne 2 Colonne 3
CMP10129905 DK435089 100%
CMP10129854 DK438546 100%

et j'aimerais la transformer de cette façons

Après
Colonne 1 Colonne 2 Colonne 3
CMP10129905 DK101345 30%
CMP10129905 DK102456 20%
CMP10129905 DK658978 50%
CMP10129854 DK345089 20%
CMP10129854 DK268365 25%
CMP10129854 DK346890 10%
CMP10129854 DK567908 10%
CMP10129854 DK476089 10%
CMP10129854 DK543785 10%
CMP10129854 DK657893 15%


Avec

DK435089 est composé de:
DK101345 30%
DK102456 20%
DK658978 50%
et DK438546 est composé de:
DK345089 20%
DK268365 25%
DK346890 10%
DK567908 10%
DK476089 10%
DK543785 10%
DK657893 15%
Comment pourrais-je faire?

Merci par avance
A voir également:

12 réponses

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
3 déc. 2012 à 17:21
Bonjour,

Par quel miracle pouvons nous savoir DK435089 est composé de: .......
A+
0
dram15 Messages postés 7 Date d'inscription lundi 3 décembre 2012 Statut Membre Dernière intervention 5 décembre 2012
3 déc. 2012 à 17:35
En fait le DK435089 est un matériel complexe, qui est composé de plusieurs matériaux normaux.

En gros je cherche à faire une décomposition par matériel, j'espére que c'est plus claire pour vous.

Cdlt
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
3 déc. 2012 à 17:44
Re,

j'espére que c'est plus claire pour vous.Non, quelles regles appliquez vous et ou se trouvent les composants????????
0
dram15 Messages postés 7 Date d'inscription lundi 3 décembre 2012 Statut Membre Dernière intervention 5 décembre 2012
3 déc. 2012 à 17:52
En gros j'ai une première feuille avec pour chaque compo, le complex matériel qui lui est assigné.
Dans une autre feuille j'ai la décomposition du complex matériel en différent matériel avec leur pourcentage. et j'essaie de créer un nouvelle feuille avec les matériel normal et pourcentage spécifique.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
3 déc. 2012 à 18:02
Re,
D'accord, pourriez vous mettre votre fichier a dispo (si pas confidentiel) sur: https://www.cjoint.com/ copier le lien cree.

Merci
0
dram15 Messages postés 7 Date d'inscription lundi 3 décembre 2012 Statut Membre Dernière intervention 5 décembre 2012
3 déc. 2012 à 18:14
je vous ai envoyé un exemple
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
3 déc. 2012 à 18:18
Re,
Par quel chemin??? Ou est le lien??
0
dram15 Messages postés 7 Date d'inscription lundi 3 décembre 2012 Statut Membre Dernière intervention 5 décembre 2012
3 déc. 2012 à 18:21
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
3 déc. 2012 à 19:37
Re,

Essayez ceci

Click sur le bouton feuil1, resultat feuil3

https://www.cjoint.com/?BLdtKfjCtRK

A+
0
dram15 Messages postés 7 Date d'inscription lundi 3 décembre 2012 Statut Membre Dernière intervention 5 décembre 2012
4 déc. 2012 à 11:26
ok merci et si je voulais supprimer la ligne des 100% sur la feuille 3.

Que pourrais ajouter dans le code la macro?
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
4 déc. 2012 à 11:34
Bonjour,

Remplacez le code existant par celui-ci

Sub Bouton2_Clic()
  Dim Plage1 As Range, Cel As Range, Col_A As Range
  Dim Wk1, Wk2, Wk3
  
  Set Wk1 = Worksheets("feuil1")
  Set Wk2 = Worksheets("feuil2")
  Set Wk3 = Worksheets("feuil3")
  
  Set Plage1 = Wk1.Range("A2:A" & Wk1.Range("A" & Rows.Count).End(xlUp).Row)
  Set Plage2 = Wk2.Range("A1:A" & Wk2.Range("A" & Rows.Count).End(xlUp).Row)
  For Each Cel In Plage1
    If Cel <> "" Then
      'DK recherche
      DK = Wk1.Range("F" & Cel.Row)
      'Recherche si DK existe
      Nbre = Application.CountIf(Plage2, DK)
      
      If Nbre = 1 Then    'DK existe
        Lig = 1
        'Recherche ligne DK
        Lig = Wk2.Columns("A").Find(DK, Wk2.Cells(Lig, "A"), , xlWhole).Row
        'Ligne DK composants
        LigC = Lig + 1
        'Tant qu'il y a un composant pour ce DK
        Do While Wk2.Cells(LigC, "C") <> ""
          'pour la dernière ligne de la colonne A
          derlig = Wk3.Range("A" & Rows.Count).End(xlUp).Row + 1
          Wk3.Range("A" & derlig) = Cel
          'DK Composants
          Wk3.Range("B" & derlig) = Wk2.Cells(LigC, "C")
          '%DK Composants
          Wk3.Range("C" & derlig) = Wk2.Cells(LigC, "E")
          LigC = LigC + 1
        Loop
      End If
    End If
  Next Cel
End Sub


Bonne suite
0
dram15 Messages postés 7 Date d'inscription lundi 3 décembre 2012 Statut Membre Dernière intervention 5 décembre 2012
5 déc. 2012 à 10:44
Merci beaucoup cela fonctionne parfaitement
Cordialement
0