Set rng = page de mise en page
Bonjour à tous,
pour une besoin pro j'ai récupérer la marco suivante de Philippe PONS,
ma question :
est il possible de faire correspondre "set rng" a mes différente page d'une feuille excel ?
Car sur une même feuille j'ai 6 pages différentes dont la taille peux varier mais pas la mise en page.
je suis conscient qu'il y à beaucoup de fois pages dans cette page ...
Merci de votre aide précieuse
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| Sub exportRange()
Dim sh As Worksheet
Dim rng As Range
Dim chartobj As ChartObject
Dim output As String
Dim zoom_coef As Double
' référence sur la feuille qui contient la plage à exporter
Set sh = Worksheets("Données sources")
' le fichier image
output = "c:\test\SavedRange4.jpg"
' el zoom
zoom_coef = 100 / sh.Parent.Windows(1).Zoom
' sélectionner la plage à exporter
Set rng = sh.Range("A1").CurrentRegion
' copier dans le presse-papier
rng.CopyPicture xlPrinter
Set chartobj = sh.ChartObjects.Add(0, 0, rng.Width * zoom_coef, rng.Height * zoom_coef)
chartobj.Chart.Paste
' exporter l'image
chartobj.Chart.Export output, "JPG"
' supprimer
chartobj.Delete
End Sub |