Fusionner plusieurs sheets via Macro et un paste value

Hello tout le monde,

J'ai trouvé cette macro sur un forum , elle permet de fusionner plusieurs sheets excel dans une sheet qui sera donc consolidée.

Cette macro fonctionne très bien, mais elle "paste" avec les formules

J'aimerai que ça fasse un copy paste special value

Est-ce possible d'ajouter ce critère "simplement" ou bien ça va complexifier tout ?

Merci d'avance

Sub Synthese()

'Vider la feuille

Sheets("feuil5").Range("A1:H2").CurrentRegion.Delete

'Copie les feuilles

'Copie feuille 1

Sheets("feuil1").Range("A1:H2").CurrentRegion.Copy Sheets("feuil5").Range("A" & Rows.Count).End(xlUp)

'Copie feuille 2

Sheets("feuil2").Range("A1:H2").CurrentRegion.Offset(1).Copy Sheets("feuil5").Range("A" & Rows.Count).End(xlUp).Offset(1)

'Copie feuille 3

Sheets("feuil3").Range("A1:H2").CurrentRegion.Offset(1).Copy Sheets("feuil5").Range("A" & Rows.Count).End(xlUp).Offset(1)

'Copie feuille 4

Sheets("feuil4").Range("A1:H2").CurrentRegion.Offset(1).Copy Sheets("feuil5").Range("A" & Rows.Count).End(xlUp).Offset(1)

End Sub

Salut,

Ajouter en fin de macro :

Dim L As Long
With Sheets("feuil5")
    L = .Range("A" & Rows.Count).End(xlUp).Row
    .Range("A1:H" & L).Value =  .Range("A1:H" & L).Value ' "copié/collé" valeurs
End With

Bonjour Cfroi, bonjour le forum,

Peut-être comme ça :

Sub Synthese()
Dim OD As Worksheet
Dim I As Byte
Dim LI As Integer

Set OD = Sheets("feuil5")
OD.Range("A1:H2").CurrentRegion.Delete
For I = 1 To 4
    LI = IIf(OD.Range("A1").Value = "", 1, OD.Cells(Application.Rows.Count, "A").End(xlUp).Row + 1)
    Sheets(I).Range("A1:H2").CurrentRegion.Copy
    OD.Cells(LI, "A").PasteSpecial (xlPasteValues)
Next I
End Sub
Rechercher des sujets similaires à "fusionner sheets via macro paste value"