Copier/coller d'une plage de cellules + cellule(s) non adjacentes

Bonjour à tous

Sur l'onglet "Facture" j'ai crée, la macro ci-dessous qui me permet de copier/coller une plage de cellules (avec l’enregistreur et adapté)

(je suis sur qu'il y a moyen de nettoyer ceci...)

Sub copie_a_plat()
    Range("C17").Select
    Range(Selection, Selection.End(xlToRight)).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Sheets("Feuil5").Select
    Range("A1").End(xlDown)(2).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    With Selection
        .VerticalAlignment = xlCenter
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    Columns("C:C").EntireColumn.AutoFit
End Sub

J'aimerais pouvoir copier/coller, en même temps:

  • La cellule fusionnée "G6:H6" qui est la date de la facture et la coller, à la suite de chaque lignes collées précédemment sur la "feuil5" dans la colonne "G" (date)
  • Ainsi que le cellule "G3", n° de facture, à la suite des dates en "H"

Cette feuille me permettras de créer mon TCD par la suite.

Merci d'avance pour votre lecture

16boutiquev3.zip (136.24 Ko)

Bonjour,

à tester,

Sub copie_a_plat2()
    fin = Sheets("FACTURE").Range("C17").End(xlDown).Row
    plage = "C17:G" & fin
    lieu = Sheets("Feuil5").Cells(Rows.Count, 1).End(xlUp).Row + 1
    lieuPlage = Range("A" & lieu & ":E" & lieu + (fin - 17)).Address

    Sheets("Feuil5").Range(lieuPlage).Value = Sheets("FACTURE").Range(plage).Value
    Sheets("Feuil5").Range("F" & lieu & ":F" & lieu + (fin - 17)).Value = Sheets("FACTURE").Range("G1").Value
    Sheets("Feuil5").Range("G" & lieu & ":G" & lieu + (fin - 17)).Value = Sheets("FACTURE").Range("G6").Value
    Sheets("Feuil5").Range("H" & lieu & ":H" & lieu + (fin - 17)).Value = Sheets("FACTURE").Range("G4").Value
End Sub

Bonjour sabV,

J'essaye de tester ça dans la journée et je reviens vers toi, merci

Bonjour sabV,

Merci pour ton code, celui-ci fonctionne parfaitement.

bonne journée.

Rechercher des sujets similaires à "copier coller plage adjacentes"