Syntaxe VBA copier-coller-transposer avec boucles

Bonjour tout le monde,

Étant débutant sur vba, j'ai vraiment besoin d'aide sur ce coup-là. Je me casse la tête depuis un moment pour trouver le bon code vba, mais sans succès....

J'ai des données dans une "feuille2", qui sont en lignes. Je souhaite les coller transposer dans ma "feuille1" dans la colonne L. L'enjeu étant qu'il y a 60 lignes, dont les données vont de B à X à chaque fois.

Concrètement, je souhaite

copier les données allant de B2:X2 de la feuille2, dans L2:L24 de feuille1,

copier les données allant de B3:X3 de la feuille2, dans L25:L47 de feuille 1,

copier les données allant de B61:X61 de la feuille2, dans L..... de feuille 1,

Auriez vous s'il vous plait une idée du code vba à utiliser?

Je vous en serai très reconnaissant étant donné que je dois boucler cette base de donnée le plus vite possible... En plus ça me permettre d'apprendre.

Merci d'avance

Bonjour,

A tester en adaptant les bons noms de feuilles :

Sub TriTranspo()

Dim i As Long, DerLigne As Long

Application.ScreenUpdating = False

For i = 2 To 61

    Worksheets("Feuil2").Range("B" & i & ":X" & i & "").Copy
    Worksheets("Feuil1").Activate
    DerLigne = Range("L65535").End(xlUp).Offset(1, 0).Row
    Range("L" & DerLigne).Select
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=True
Next i

Worksheets("Feuil2").Activate

Application.ScreenUpdating = True

Cordialement,

D'abord merci, qui plus est pour la rapidité...

Euh j'ai essayé et ça me renvoie un message : "400". Je me demande où est l'erreur

Tu as bien remodifié les noms de feuilles avec les noms de ton fichier réél ?

Ah je vois, ma faute, je n'ai pas précisé, le code est à copier dans un module et à affecter à un bouton.

Sinon joint ton fichier en enlevant les données confidentielles, et je regarderais d'où vient cette erreur.

Cordialement,

Bonjour,

Essaie comme ceci

Sub TriTranspo()
Dim i As Long, DerLigne As Long
Application.ScreenUpdating = False
For i = 2 To 61
    Worksheets("Feuil2").Range("B" & i & ":X" & i & "").Copy
    DerLigne = Worksheets("Feuil1").Range("L65535").End(xlUp).Offset(1, 0).Row
    Worksheets("Feuil1").Range("L" & DerLigne).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=True
Next i
Application.ScreenUpdating = True
End Sub

Si ok n'oublie pas de cliquer sur le V vert à coté du bouton Editer pour cloturer le fil

Amicalement

Bonjour à tous,

Une autre

Sub Transpose()
Dim Lg&, i%
    Application.ScreenUpdating = False
        Sheets("Feuil2").Activate
        Lg = Range("b" & Rows.Count).End(xlUp).Row
    For i = 2 To Lg
        Range("b" & i).Resize(1, 23).Copy   'colonnes B:X
        With Sheets("Feuil1")
            .Range("L65536").End(xlUp)(2).PasteSpecial Paste:=xlPasteValues, Transpose:=True
        End With
        Application.CutCopyMode = False
    Next i
End Sub

Amicalement

Claude

Je suis "scotché" par votre efficacité !! Un grand merci je viens de gagner des heures et des heures de copier coller....

Encore merci.

Bonne soirée !

Bonjour,

J'ai suivi l'exemple et top par contre dans mon cas j'arrive pas à modifier le code pour faire :

Je copie les valeurs en feuille 2 de la colonnes b de B1 à B6 puis les colles sur la feuille 1 en transposé de B2 à G2.

J'ai pris le dernier code qui me parle un peu plus mais je suis preneur d'avoir un code qui permettre de le faire en boucle comme dans l'exemple précédent.

Possible ?

Rechercher des sujets similaires à "syntaxe vba copier coller transposer boucles"