Insérer lignes + copier valeurs

NaCo808 Messages postés 2 Statut Membre -  
NaCo808 Messages postés 2 Statut Membre -
Bonjour !

Dans Excel, je souhaiterais créer une macro pour passer de ça (exemple, mon fichier de données est beaucoup plus grand) :

colonne 1 colonne 2
1 2
2 1
3 5
4 6

à ça :
c1 c2
1 2
1 2
1 2
1 2
1 2
2 1
2 1
2 1
2 1
2 1
3 5
3 5
3 5
3 5
3 5
4 6
4 6
4 6
4 6
4 6

Donc une macro pour insérer 4 nouvelles lignes entre chaque ligne et pour copier chaque ligne dans les 4 lignes suivantes.

Merci beaucoup pour le temps que vous consacrerez à m'aider :)

1 réponse

  1. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 784
     
    bonjour,

    Pourquoi VBA alors qu'une simple formule suffit (en c1) :
    =DECALER(A$1;ENT((LIGNE(A1)-1)/5);0)


    0
    1. NaCo808 Messages postés 2 Statut Membre
       
      Merci Patrice33740 pour la réponse :)

      Quelqu'un a trouvé le code sur VBA :

      Sub test()
      Dim nbLigne As Integer
      Dim FL1 As Worksheet, Cell As Range, NoCol As Integer, compteur As Integer, LigneCourante As Integer

      Dim NoLig As Integer, DerLig As Integer, Var As Variant
      nbLigne = 4
      Dim tableau1(5) As String, tableau2(5) As String

      Set FL1 = Worksheets("Feuil1")
      NoCol = 1
      For NoLig = 1 To nbLigne
      tableau1(NoLig) = Cells(NoLig, "A").Value
      tableau2(NoLig) = Cells(NoLig, "B").Value
      Next
      compteur = 1
      For NoLig = 1 To nbLigne
      For compteur = 1 To 5
      LigneCourante = (NoLig - 1) * (5) + compteur
      Cells(LigneCourante, "A").Value = tableau1(NoLig)
      Cells(LigneCourante, "B").Value = tableau2(NoLig)
      Next
      Next
      End Sub

      A côté de nbLigne tu mets le nombre de lignes que tu as au départ, dans les parenthèses de tableau1() et tableau2() tu mets aussi le nombre de lignes que tu as au départ, dans Set FL1 = Worksheets("Feuil1") tu remplaces "Feuil1" par le nom de ta feuille.

      Je l'ai testé, ça marche super, ràs.
      0