السلام عليكم ورحمة الله وبركاته
أقدم لكم كود يقوم بتصدير نطاق الطباعة Print Area كصورة ، ويتم تسمية الصورة بمحتوى الخلية A1.
تم إعداد نطاق الطباعة في الملف المرفق ليكون النطاق A1:E12 كما هو موضح بالصورة التالية :
قم بوضع الكود التالي في موديول عادي Standard Module ثم نفذ الأمر ليتم تصدير نطاق الطباعة كصورة بامتداد JPG في نفس مسار المصنف الحالي ، ويمكن تعديل المسار من خلال الكود ليلائم المستخدم.
CODE
Sub ExportPrintAreaToJPG()
Dim objChart As Chart
Dim i As Integer
Dim intCounter As Integer
Dim strRange As String
strRange = CStr(Worksheets("Sheet1").PageSetup.PrintArea)
Application.ScreenUpdating = False
Call Sheet1.Range(strRange).CopyPicture(xlScreen, xlPicture)
With Sheet2
.Shapes.AddChart
.Activate
.Shapes.Item(1).Select
Set objChart = ActiveChart
.Shapes.Item(1).Width = Sheet1.Range(strRange).Width
.Shapes.Item(1).Height = Sheet1.Range(strRange).Height
objChart.Paste
objChart.Export Filename:=ThisWorkbook.Path & "" & Sheet1.Range("A1").Value & ".JPG"
intCounter = Sheet2.Shapes.Count
For i = 1 To intCounter
.Shapes.Item(1).Delete
Next i
End With
Application.Goto Sheet1.Range("A1")
Application.ScreenUpdating = False
MsgBox "Done...", 64
End Sub
وهذه الصورة هي ناتج عملية التصدير التي قام بها الكود
رابط الملف من هنا
إعداد / ياسر خليل أبو البراء