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 : Sélectionner tout - Visualiser dans une fenêtre à part
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