Bonjour,
J'ai un fichier constitué d'une quarantaine d'onglets contenant chacun un tableau situé au même endroit. J'ai trouvé sur le net une macro permettant de compiler les uns en dessous des autres ces tableaux sur une même feuille (et ca marche très bien). Par contre, je ne parviens pas à les coller en tant qu'image ou à combiner un collage valeurs/formats . Le pb c'est qu'avec PasteSpecial Paste:=xlPasteAll les formules aussi sont collées.
Voici la macro :
Sub jj()
Dim sh As Worksheet
Application.DisplayAlerts = False
On Error Resume Next
Sheets("Compilation").Delete
Application.DisplayAlerts = True
On Error GoTo 0
Sheets.Add
ActiveSheet.Name = "Compilation"
[a1] = "Compilation"
For Each sh In ActiveWorkbook.Sheets
If sh.Name <> "Compilation" Then
Set plage = sh.Range("n7100:bj" & sh.Cells(Rows.Count, "a").End(3).Row)
plage.Copy
Sheets("Compilation").Range("a" & Sheets("Compilation").Cells(Rows.Count, "a").End(3).Row + 1).PasteSpecial Paste:=xlPasteAll
End If
Next
End Sub
J'ai essayé de rajouter après le premier Copy :
plage.CopyPicture Appearance:=xlScreen, Format:=xlPicture mais je tombe sur l'erreur "propriété ou méthode non gérée par cet objet". Etant débutante en vba, je m'adresse à vous.
Merci d'avance
J'ai un fichier constitué d'une quarantaine d'onglets contenant chacun un tableau situé au même endroit. J'ai trouvé sur le net une macro permettant de compiler les uns en dessous des autres ces tableaux sur une même feuille (et ca marche très bien). Par contre, je ne parviens pas à les coller en tant qu'image ou à combiner un collage valeurs/formats . Le pb c'est qu'avec PasteSpecial Paste:=xlPasteAll les formules aussi sont collées.
Voici la macro :
Sub jj()
Dim sh As Worksheet
Application.DisplayAlerts = False
On Error Resume Next
Sheets("Compilation").Delete
Application.DisplayAlerts = True
On Error GoTo 0
Sheets.Add
ActiveSheet.Name = "Compilation"
[a1] = "Compilation"
For Each sh In ActiveWorkbook.Sheets
If sh.Name <> "Compilation" Then
Set plage = sh.Range("n7100:bj" & sh.Cells(Rows.Count, "a").End(3).Row)
plage.Copy
Sheets("Compilation").Range("a" & Sheets("Compilation").Cells(Rows.Count, "a").End(3).Row + 1).PasteSpecial Paste:=xlPasteAll
End If
Next
End Sub
J'ai essayé de rajouter après le premier Copy :
plage.CopyPicture Appearance:=xlScreen, Format:=xlPicture mais je tombe sur l'erreur "propriété ou méthode non gérée par cet objet". Etant débutante en vba, je m'adresse à vous.
Merci d'avance