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

دالة لإدراج صورة


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

السلام عليكم ورحمة الله وبركاته

إخواني الكرام

أثناء تجوالي عثرت على هذه الدالة ، تقوم الدالة بعمل إدراج للصورة

الدالة بالشكل التالي

Function INSERTPICTURE(ByVal PictureFullName As String, Optional ByVal PicWidth As Single = 200, _

													 Optional ByVal PicHeight As Single = 150)


Dim CellActive	 As Range

Dim picPicture	 As Object

Set CellActive = Application.Caller

For Each picPicture In CellActive.Parent.Pictures

	 If picPicture.TopLeftCell.Address = CellActive.Address Then

		 picPicture.Delete

		 Exit For

	 End If

Next

Set picPicture = CellActive.Parent.Pictures.Insert(PictureFullName)

With picPicture

	 .Left = CellActive.Left + 1

	 .Top = CellActive.Top + 1

	 .Width = PicWidth

	 .Height = PicHeight

End With

End Function
لتنفيذ الدالة :
قم بعمل مجلد مثلاً على البارتشن C وأعطه الاسم Pictures وضع صورة في هذا المجلد
في الخلية قم بكتابة المعادلة بالشكل التالي:
=INSERTPICTURE("C:\Pictures\Penguins.jpg")
كما أنه يمكن إضافة أبعاد للصورة (العرض والارتفاع) بهذا الشكل
=INSERTPICTURE("C:\Pictures\Penguins.jpg";200;800)

تم تعديل بواسطه YasserKhalil
رابط هذا التعليق
شارك

أخي الغالي

أولا قم بنسخ الكود أعلاه إلى موديول جديد في محرر الأكواد

ثانيا قم بعمل مجلد على البارتسن C باسم Pictures

ثالثا ضع صورة داخل المجلد Pictures باسم Penguins متبوعاً بنقطة ثم امتداد الصورة التي نسختها

أخيراً اكتب المعادلة بهذا الشكل

 

 

 
=INSERTPICTURE("C:\Pictures\Penguins.jpg")

ثم اضغط إنتر

 

تفضل أخي الحبيب الملف التالي

قم بنسخ المجلد Pictures إلى البارتشن C

ثم في الخلية A1 اضغط دبل كليك

InsertPicture.rar

تم تعديل بواسطه YasserKhalil
  • Thanks 1
رابط هذا التعليق
شارك

ما هي نسخة الأوفيس التي تعمل عليها؟؟؟

الدالة تعمل لدي بشكل جيد على أوفيس 2007

أرجو من السادة الذين لديهم أوفيس 2003 أن يفيدونا بالنتيجة

رابط هذا التعليق
شارك

مشكور على مرورك العطر أخي عباد (أبو نصار) ، والحمد لله إنك عرفتني دلوقتي (مش يوسف وإن كنت أحب اسم يوسف)

رابط هذا التعليق
شارك

السلام عليكم

الاستاذ ياسر خليل جزاك الله خيرا الملف يعمل بشكل ممتاز ووضعت اكثر من صورة وكان جلب الصور ممتاز فقط غيرت اسم الصورة بالمعادلة على ضوء اسمها في الملف الذي وضعته بالبارتشن C

جعلها الله سبحانه وتعالى في ميزان حسناتك

رابط هذا التعليق
شارك

المعلم الكبير والأخ الغالي أحمد زمان

بارك الله فيك ومشكور على مرورك العطر (والله زمان)

الأخ عباس

وجزيت بمثله

الحمد لله الذي بنعمته تتم الصالحات

تم تعديل بواسطه YasserKhalil
رابط هذا التعليق
شارك

السلام عليكم

الدالة تعمل بكفاءة 2007

==

قمت بعد اذن الاستاذ ياسر خليل بتعديل على الدالة لتصبح دون الحاجة الى كتابة المسار وانما اسم الصورة فقط


Function INSERTPICTURE(ByVal PictureFullName As String, Optional ByVal PicWidth As Single = 200, _

																										 Optional ByVal PicHeight As Single = 150)

Dim CellActive   As Range

Dim picPicture   As Object

MyName = "C:\Pictures\": MyType = ".jpg"

Set CellActive = Application.Caller

For Each picPicture In CellActive.Parent.Pictures

		 If picPicture.TopLeftCell.Address = CellActive.Address Then

				 picPicture.Delete

				 Exit For

		 End If

Next

Set picPicture = CellActive.Parent.Pictures.Insert(MyName & PictureFullName & MyType)

With picPicture

		 .Left = CellActive.Left + 1

		 .Top = CellActive.Top + 1

		 .Width = PicWidth

		 .Height = PicHeight

End With

End Function

لتصبح الدالة هكذا

=INSERTPICTURE("Penguins")

رابط هذا التعليق
شارك

وهذا التعديل ليتم اضافة نوع الصورة


Function INSERTPICTURE(ByVal PictureFullName As String, MyType As String, Optional ByVal PicWidth As Single = 200, _

																									 Optional ByVal PicHeight As Single = 150)

Dim CellActive   As Range

Dim picPicture   As Object

MyName = "C:\Pictures\"

Set CellActive = Application.Caller

For Each picPicture In CellActive.Parent.Pictures

		 If picPicture.TopLeftCell.Address = CellActive.Address Then

				 picPicture.Delete

				 Exit For

		 End If

Next

Set picPicture = CellActive.Parent.Pictures.Insert(MyName & PictureFullName & "." & MyType)

With picPicture

		 .Left = CellActive.Left + 1

		 .Top = CellActive.Top + 1

		 .Width = PicWidth

		 .Height = PicHeight

End With

End Function

لتصبح الدالة

=INSERTPICTURE("Penguins";"jpg")

رابط هذا التعليق
شارك

  • 1 year later...

هل يمكن لي تنفيذ هذة الطريقة بإستخدام دالة vlookup

أو بمعني آخر أريد جلب صورة الموظف بالرقم الوظيفي

مع العلم أن ملف الصور أسمة (picture) في بارتشن © وصورة كل موظف مسماة بالرقم الوظيفي الخاص بة

 

مرفق لكم ملف الإكسيل

 

ولكم وافر التحية والتقدير

Desktop.rar

تم تعديل بواسطه احمد بهجت
  • Like 1
رابط هذا التعليق
شارك

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

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

Important Information