Répeter une fonction pour chaque ligne de tableau
Bonjour à tous,
Je suis en train d'écrire une maccro qui remplit des formulaires avec des données présentes dans un tableau. Pour vous aider a comprendre je vais vous lister les feuilles de mon classeur :
- ATA 106 NEW (formulaire numéro 1)
- ATA 106 USED (formulaire numéro 2)
- Feuil1 (Mon tableau de donnée)
Le programme rempli le formulaire 1 ou 2, selon une condition, en copiant chaque cellule d'une ligne du tableau à un endroit ciblé et toujours identique dans le formulaire, il copie ensuite ce formulaire dans une nouvelle feuille à la fin du classeur, et recommence l'opération avec la ligne suivante du tableau.
Je n'arrive pas a trouver comment faire pour que l'opération se répète autant de fois qu'il y a de ligne dans le tableau (CAD si j'ai 30 ligne, je me retrouverai avec 30 formulaires différents et complétés ).
Merci pour votre aide !
Voici mon programme :
Sub ATTA106()
Sheets("Feuil1").Activate
If Range("E2").Value Like "NEW" Then
Sheets("ATA 106 Quantité 1 NEW").Range("Q2") = Sheets("Feuil1").Range("F2")
Sheets("ATA 106 Quantité 1 NEW").Range("G9") = Sheets("Feuil1").Range("G2")
Sheets("ATA 106 Quantité 1 NEW").Range("S9") = Sheets("Feuil1").Range("H2")
Sheets("ATA 106 Quantité 1 NEW").Range("G14") = Sheets("Feuil1").Range("A2")
Sheets("ATA 106 Quantité 1 NEW").Range("C14") = Sheets("Feuil1").Range("B2")
Sheets("ATA 106 Quantité 1 NEW").Range("O14") = Sheets("Feuil1").Range("C2")
Sheets("ATA 106 Quantité 1 NEW").Range("Q14") = Sheets("Feuil1").Range("D2")
Sheets("ATA 106 Quantité 1 NEW").Range("U14") = Sheets("Feuil1").Range("E2")
Sheets("ATA 106 Quantité 1 NEW").Range("H20") = Sheets("Feuil1").Range("I2")
Sheets("ATA 106 Quantité 1 NEW").Range("H21") = Sheets("Feuil1").Range("J2")
Sheets("ATA 106 Quantité 1 NEW").Range("H22") = Sheets("Feuil1").Range("K2")
Sheets("ATA 106 Quantité 1 NEW").Range("M27") = Sheets("Feuil1").Range("L2")
Worksheets("ATA 106 Quantité 1 NEW").Copy After:=Sheets(Sheets.Count)
Else
Sheets("ATA 106 Quantité 1 USED").Range("Q2") = Sheets("Feuil1").Range("F2")
Sheets("ATA 106 Quantité 1 USED").Range("G9") = Sheets("Feuil1").Range("G2")
Sheets("ATA 106 Quantité 1 USED").Range("S9") = Sheets("Feuil1").Range("H2")
Sheets("ATA 106 Quantité 1 USED").Range("G14") = Sheets("Feuil1").Range("A2")
Sheets("ATA 106 Quantité 1 USED").Range("C14") = Sheets("Feuil1").Range("B2")
Sheets("ATA 106 Quantité 1 USED").Range("O14") = Sheets("Feuil1").Range("C2")
Sheets("ATA 106 Quantité 1 USED").Range("Q14") = Sheets("Feuil1").Range("D2")
Sheets("ATA 106 Quantité 1 USED").Range("U14") = Sheets("Feuil1").Range("E2")
Sheets("ATA 106 Quantité 1 USED").Range("H20") = Sheets("Feuil1").Range("I2")
Sheets("ATA 106 Quantité 1 USED").Range("H21") = Sheets("Feuil1").Range("J2")
Sheets("ATA 106 Quantité 1 USED").Range("H22") = Sheets("Feuil1").Range("K2")
Sheets("ATA 106 Quantité 1 USED").Range("M27") = Sheets("Feuil1").Range("L2")
Worksheets("ATA 106 Quantité 1 USED").Copy After:=Sheets(Sheets.Count)
End If
Sheets("Feuil1").Activate
If Range("E3").Value Like "NEW" Then
Sheets("ATA 106 Quantité 1 NEW").Range("Q2") = Sheets("Feuil1").Range("F3")
Sheets("ATA 106 Quantité 1 NEW").Range("G9") = Sheets("Feuil1").Range("G3")
Sheets("ATA 106 Quantité 1 NEW").Range("S9") = Sheets("Feuil1").Range("H3")
Sheets("ATA 106 Quantité 1 NEW").Range("G14") = Sheets("Feuil1").Range("A3")
Sheets("ATA 106 Quantité 1 NEW").Range("C14") = Sheets("Feuil1").Range("B3")
Sheets("ATA 106 Quantité 1 NEW").Range("O14") = Sheets("Feuil1").Range("C3")
Sheets("ATA 106 Quantité 1 NEW").Range("Q14") = Sheets("Feuil1").Range("D3")
Sheets("ATA 106 Quantité 1 NEW").Range("U14") = Sheets("Feuil1").Range("E3")
Sheets("ATA 106 Quantité 1 NEW").Range("H20") = Sheets("Feuil1").Range("I3")
Sheets("ATA 106 Quantité 1 NEW").Range("H21") = Sheets("Feuil1").Range("J3")
Sheets("ATA 106 Quantité 1 NEW").Range("H22") = Sheets("Feuil1").Range("K3")
Sheets("ATA 106 Quantité 1 NEW").Range("M27") = Sheets("Feuil1").Range("L3")
Worksheets("ATA 106 Quantité 1 NEW").Copy After:=Sheets(Sheets.Count)
Else
Sheets("ATA 106 Quantité 1 USED").Range("Q2") = Sheets("Feuil1").Range("F3")
Sheets("ATA 106 Quantité 1 USED").Range("G9") = Sheets("Feuil1").Range("G3")
Sheets("ATA 106 Quantité 1 USED").Range("S9") = Sheets("Feuil1").Range("H3")
Sheets("ATA 106 Quantité 1 USED").Range("G14") = Sheets("Feuil1").Range("A3")
Sheets("ATA 106 Quantité 1 USED").Range("C14") = Sheets("Feuil1").Range("B3")
Sheets("ATA 106 Quantité 1 USED").Range("O14") = Sheets("Feuil1").Range("C3")
Sheets("ATA 106 Quantité 1 USED").Range("Q14") = Sheets("Feuil1").Range("D3")
Sheets("ATA 106 Quantité 1 USED").Range("U14") = Sheets("Feuil1").Range("E3")
Sheets("ATA 106 Quantité 1 USED").Range("H20") = Sheets("Feuil1").Range("I3")
Sheets("ATA 106 Quantité 1 USED").Range("H21") = Sheets("Feuil1").Range("J3")
Sheets("ATA 106 Quantité 1 USED").Range("H22") = Sheets("Feuil1").Range("K3")
Sheets("ATA 106 Quantité 1 USED").Range("M27") = Sheets("Feuil1").Range("L3")
Worksheets("ATA 106 Quantité 1 USED").Copy After:=Sheets(Sheets.Count)
End If
End sub