Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Transposer colonnes sur lignes

soumus

XLDnaute Junior
Bonjour cher tous
Je sollicité votre soutien pour résoudre un problème excel. J ai un fichier Excel avec 3 feuilles. Je voudrais un code vba qui va me permettre de copier les données en colonnes sur ma feuille "Cotation "et de les coller en lignes sur la feuille "Base" et ensuite se positionner à la 1ere ligne vide suivante pour la prochaine copie-coller à faire et ainsi de suite.
Merci de votre soutien.
 

Pièces jointes

  • Cotation MRP-MRH-GD-RCCE (version TEST).xlsm
    105.8 KB · Affichages: 25

gbinforme

XLDnaute Impliqué
Bonsoir,

Voici le code qui devrait résoudre la demande :
VB:
Private Sub Copy_base_Click()   ' copie cotation transposée
Dim cli As Long
Dim der As Long
    der = Sheets("Base").Cells(Rows.Count, 6).End(xlUp).Row + 1
    With Sheets("CLIENT")
        cli = .Cells(Rows.Count, 1).End(xlUp).Row
        .Cells(cli, 1).Resize(1, 5).Copy
    End With
    Sheets("Base").Cells(der, 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    Sheets("Base").Cells(der, 1).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    Sheets("Cotation").Range("F10:F36").Copy
    Sheets("Base").Cells(der, 7).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
    Sheets("Base").Cells(der, 7).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
    Sheets("Cotation").Range("G10:G36").Copy
    Sheets("Base").Cells(der + 1, 7).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
    Sheets("Base").Cells(der + 1, 7).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
    Sheets("Base").Cells(der + 1, 6).Value = "Taux (%0)"
    Sheets("Cotation").Range("H10:H36").Copy
    Sheets("Base").Cells(der + 2, 7).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
    Sheets("Base").Cells(der + 2, 7).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
    Sheets("Base").Cells(der + 2, 6).Value = "Primes"
    Application.CutCopyMode = False
    Sheets("Base").Activate
    Sheets("Base").Cells(der, 1).Activate
End Sub

Bonne utilisation

Cordialement
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…