اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

الردود الموصى بها

قام بنشر

السلام عليكم

أثناء التجوال فى الإنترنت

وجدت هذا الكود

لحفظ مدى معين من الخلايا كصورة على جهازك

قد يستفيد منه بعضكم

Sub Export_Range_Images()


' =========================================

' Code to save selected Excel Range as Image

' =========================================


Dim oRange As Range

Dim oCht As Chart

Dim oImg As Picture




Set oRange = Range("A1:B2")

Set oCht = Charts.Add



oRange.CopyPicture xlScreen, xlPicture



oCht.Paste


oCht.Export FileName:="d:\SavedRange.jpg", Filtername:="JPG"


End Sub

و هذه هى صورة لمدى من صفين

image001.jpg

  • Like 1
قام بنشر

اخى الحبيب

خالص تحياتى

اتمنى ان ترفق ملف مطبق عليه هذا الكود

ثانيا

هل تتغير محتويات هذه الصورة بتغير محتويات هذة الخلايا

ان كان كذلك يمكن استفادة منها فى عمل تزييل مخصص لصفات الشيتات عند الطبع

خالص تحياتى

اخيك ابو الاء

قام بنشر

في البداية كود مفيد وجميل نشكر الاخ

ولكن يمكن من الاخوة خبراء الفيجوال تعديله ليصبح المدي بدلا من مدى ثابت يعدل برمجيا الى seletion range

وايضا جعل مسار الحفظ بدلا من مسار ثابت الى مسار متغير يكتب في خليه محدده واذا وجدها خالية يستخدم مسار افتراضي

عندها اعتقد ان الكود سيكون اجمل وافيد وايسر للاستخدام

حاولت جرب التعديل عليه لكني فشلت

Range("A1").Select

Range(Selection, Selection.End(xlDown)).Select

Range(Selection, Selection.End(xlToRight)).Select

Set oRange = Selection.Range

قام بنشر

السلام عليكم

قمت بالتعديل بحيث انه يقوم بحفظ خلايا بمدى ملائم للشرت

ويقوم بحذف الشرت بعد حفظ الصورة

بدون اظهار رسالة الاكسل لتاكيد الحذف

ويتم حفظ الصورة في فولدر ملف الاكسل

هذا بشكل سريع

وساقوم بالتعديل بطرق اخرى

Sub Export_Range_Images()


' =========================================

' Code to save selected Excel Range as Image

' =========================================

Dim P

Dim oRange As Range

Dim oCht As Chart

Dim oImg As Picture


P = ActiveWorkbook.Path & "\"


Set oRange = Range("A1:O35")

Set oCht = Charts.Add


Application.ScreenUpdating = False

Application.DisplayAlerts = False

oRange.CopyPicture xlScreen, xlPicture



oCht.Paste


oCht.Export Filename:=P & "SavedRange.jpg", Filtername:="JPG"


oCht.Delete

Application.DisplayAlerts = True

Application.ScreenUpdating = True

End Sub

خبور خير

حفظ صورة من نطاق خلايا معين.rar

  • Like 3
  • Thanks 1
قام بنشر

استاذنا خبور جزاك الله خيرا

كده اتحلت اول مشكلة وهي الحفظ في مسار الملف وهو امر جيد ورائع

يتبقى ان يكون الحفظ للمساحة المظلله من الشيت وليس مشاحة محددة في الكود لصعوبة التعديل بداخل الكود وايضا ليمكن الاستفادة من الميزة دونما فتح الكود للاخرين لتعديل المدى

نشكرك على التواصل وفي انتظار هذا التعديل

  • 2 weeks later...
قام بنشر

استاذي العزيز خبور تحية طيبه وبعد

عندي طلب بسيط وهو ان يكون اسم الصورة المحفوظة لخلية معينة مثال الخلية C3 وان يكون مسار الحفظ في مجلد باسم معين

وشكراً

  • 3 weeks later...
قام بنشر (معدل)

بعد إذن أخي وحبيبي الأستاذ/ خبور خير، فقد أعجبني هذا الطرح وأردت أن أشارك فيه بتلبية طلبات الأخوة الأعزاء.

post-17331-1280534324016_thumb.jpg

حدد المدى المطلوب أخذ صورة له ثم انقر الزر "حفظ الصورة" أو قم بالضغط على زر "F5" ثم انقر تشغيل.

سيتم حفظ الصورة في المسار المطلوب وإذا تم التجاهل (أي تم تركه فارغاً) يتم وضع الصورة بجانب البرنامج.

وستكون الصورة باسم الورقة والمدى.

ويمكن أيضاً عمل برنت سكرين للشاشة (Print Screen) ثم تحديد الخيار "من الحافظة مباشرة ً." ثم نقر الزر "حفظ الصورة".

تحياتي للجميع ولصاحب هذا الطرح الجميل.

حفظ صورة من نطاق خلايا معين.rar

تم تعديل بواسطه أكرم الغامدي
قام بنشر (معدل)

 Dim P

Dim oRange As Range

Dim oCht As Chart

Dim oImg As Picture


P = ActiveWorkbook.Path & "\"


Set oRange = Selection

Set oCht = Charts.Add


Application.ScreenUpdating = False

Application.DisplayAlerts = False

oRange.CopyPicture xlScreen, xlPicture



oCht.Paste


oCht.Export Filename:=P & "SavedRange.jpg", Filtername:="JPG"


oCht.Delete

Application.DisplayAlerts = True

Application.ScreenUpdating = True

End Sub 

وعند التعديل على السطر السادس

ليكون ( Set oRange = selesctin) بدلا من : Set oRange = Range("A1:O35")

يتم حفط أي نطاق يتم تحديده

تم تعديل بواسطه abusarah73
قام بنشر (معدل)

تعديل الخطأ في كلمة كتبت خطأ( selection) بدلا من ( Selection)

 Dim P

Dim oRange As Range

Dim oCht As Chart

Dim oImg As Picture


P = ActiveWorkbook.Path & "\"


Set oRange = Selection

Set oCht = Charts.Add


Application.ScreenUpdating = False

Application.DisplayAlerts = False

oRange.CopyPicture xlScreen, xlPicture



oCht.Paste


oCht.Export Filename:=P & "SavedRange.jpg", Filtername:="JPG"


oCht.Delete

Application.DisplayAlerts = True

Application.ScreenUpdating = True

End Sub 

وعند التعديل على السطر السادس

ليكون ( Set oRange = Selection) بدلا من : Set oRange = Range("A1:O35")

يتم حفط أي نطاق يتم تحديده

تم تعديل بواسطه abusarah73
  • 5 years later...
قام بنشر

السلام عليكم

الرجاء التعديل على الكود 

ليقوم بحفظ نطاق الطباعة المحدد للصفحة

ويسميه بأسم محتوى الخلية A4

ويضعه فى المسار المحدد داخل الكود فى مثلا C\DESKTOP

================================

وهل بالإمكان بدلا من خذف صفحة الشارت جعلها VERYHEDEN فى بداية الكود وأخره لتسريع الكود 

وبارك الله فيكم

 

  • 5 months later...
زائر
هذا الموضوع مغلق.
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information