اعلن هنا
أكاديمية الصقر للتدريب
أعلن هنا
أعلن هنا
أعلن هنا
أعلن هنا



أهلا وسهلا بك زائرنا الكريم في أكاديمية الصقر للتدريب، لكي تتمكن من المشاركة ومشاهدة جميع أقسام المنتدى وكافة الميزات ، يجب عليك إنشاء حساب جديد بالتسجيل بالضغط هنا أو تسجيل الدخول اضغط هنا إذا كنت عضواً .





الحلقة الثانية من درس VBA

السلام عليكم ورحمة الله وبركاته الحلقه الثانيه من دروس الVBA للاستاذ الكبير ياسر خليل ونبدأ حلقة جديدة من حلقات مسلسل ..



06-02-2018 10:15 مساء
Eslam Abdullah
menu_open
مشرف قسم الاكسيل
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 03-10-2017
رقم العضوية : 852
المشاركات : 290
الجنس : ذكر
تاريخ الميلاد : 1-9-1995
يتابعهم : 4
يتابعونه : 28
قوة السمعة : 2113
الاعجاب : 517
 offline 

السلام عليكم ورحمة الله وبركاته
الحلقه الثانيه من دروس الVBA للاستاذ الكبير ياسر خليل

 
ونبدأ حلقة جديدة من حلقات مسلسل افتح الباب يا عبد التواب ..
اتعلمنا المرة اللي فاتت إزاي ندخل على محرر الأكواد وإزاي نضيف كود واتعرفنا على نافذة المشروع ..
دلوقتي جه الوقت اللي لازم تعرف فيه الهيكلة العامة للتعامل مع الأكواد .. يعني ايه ؟
هضرب مثال ليتضح المقال :

أنا ساكن في عمارة كبيرة (العمارة زي تطبيق الإكسيل Application) دي العمارة بتاعتنا
وساكن في شقة فيها (الشقة دي هي WorkBook المصنف يعني ..
والشقة عندي فيها 3 أوض (أوضة 1 - أوضة 2 - أوضة 3 ) دي زي أوراق العمل اللي عندنا Sheet1 و Sheet2 و Sheet3
جوا كل أوضة فيه مجموعة أشياء أو بنسميها كائنات Objects بس حاجات صغيرة.. مثلا فيه تلاجة .. والتلاجة طبعا واخدة حيز من الفراغ بنسميه نطاق Range يعني النطاق ده جوا الأوضة اللي جوا الشقة اللي في العمارة
يبقا ممكن نبرمج التلاجة : أيوا صحيح !!
هنحدد مكانها ..
عمارة.شقة.أوضة(1).تلاجة.فتح
بالإكسيل تكون بالشكل ده :
Application.ThisWorkbook.Sheets(1).Range("A1").Select
بكدا نكون عرفنا هيكلة الكائنات الموجودة عندنا Objects ..
في السطر اللي فات بدأنا بالعمارة أقصد التطبيق متبوعاً بنقطة Period ثم حددنا الشقة أقصد المصنف Workbook وهنا أشرنا للمصنف الحالي ThisWorkbook، وبعدين حددنا الأوضة اللي هي الشيت Sheets (1) ثم أخيرا التلاجة أقصد النطاق المراد العمل عليه وهو هنا الخلية A1 بهذا الشكل Range("A1) .
>>> وأخيرا .. بعدما وصلنا للتلاجة هنعمل ايه ؟ أكيد هنفتحها عشان نشوف أي حاجة نشربها بعد الكلام الكتير ده الواحد ريقه نشف اللي يبل ريقكم .. أيوا نفتح دا فعل والفعل في اللغة العربية نعرفه إزاي .. لما نحط قبليه كلمة (أن) يعني لو قلنا (أن يفتح) كدا فيه معنى واضح .. أما لو قلنا كلمة حجم وحطينا قبليها (أن حجم) دي ملهاش معنى ، فبالتالي كلمة يفتح فعل أما كلمة حجم فدي اسم أو صفة (كدا معلمي اللغة العربية هيبلغوا عني إني بدي دروس في العربي) !!

يرجع مرجوعنا لموضوعنا إحنا ليه شرحنا الفعل لأن الفعل في البرمجة بيساوي كلمة m*ethod يعني لما نشوف كلمة m*ethod دي نربطها بحدث الفعل

تلاجة.فتح


يعني لو جربنا السطر اللي فات ووقفنا في خلية بعيدة شوية ونفذنا الكود هيحدد الخلية A1 .. مبروك عليكم السطر الأول من الأكواد
الفعل هنا أو الـ m*ethod اسمه Select وترجمتها حدد .. أي أننا قمنا بالإشارة لكل الكائنات وصولا إلى الخلية A1 ثم نأمر الكود بتحديد النطاق.
ناخد مثال مهم أوي عشان نفهم الـ m*ethod بشكل أكبر

Application.Quit

هنا لما اكتب الكائن Application وبعدين أكتب النقطة هلاحظ حاجة في غاية الأهمية .. ايه هيا؟
محرر الأكواد بيقدم مساعدة لينا (ودي عشان الجماعة اللي بيقولوا المشكلة في اللغة .. خلوا بالكم) بيظهر لنا قايمة شبه القايمة المنسدلة بس مش منسدلة فيها كلمات كتيرة ..

MjIyNTM2MQ3535810151805
وهنلاقي شكلين : الشكل الأول عمنا بيل جيتس بيشاور بصبعه على ورقة والشكل التاني علامة شبه الطوبة الخضرا ..
Mzc1NTE2MQ8686405942574
الشكل الأول بنسمية الخاصية Property وهنشرحها بالتفصيل كمان شوية ، والشكل التاني الطوبة الخضرا ربنا يجعل حياتكم خضرا ومزهزهة هي دي الـ m*ethod أو الفعل
طيب هعرف إزاي إذا كانت كلمة Quit دي m*ethod ولا Proerty ببساطة بص على شكلها هتلاقي علامة الطوبة الخضرا اللي قلنا عليها يعني كلمة Quit دي m*ethod
وطبعا الحتة اللي فاتت للجماعة اللي مش بيعرفوا إنجليزي زي حالاتي ، أما بالنسبة للي بيعرفوا إنجليزي فيبصوا لكلمة Quit هيلاقوا معناها اخرج ودا فعل يعني m*ethod>
يبقا خلاصة الكلام السطر اللي فات بيعطي أمر للخروج من التطبيق.



نقطة تانية في غاية الأهمية لما نلاقي نفسنا مش عارفين حروف الكلمة اللي بنكتبها .. بعد النقطة ولما تظهر القايمة بكتب أول حرف أو حرفين في الكلمة اللي أنا عايزها ، وبعدينباستخدام الأسهم فوق وتحت أقف على الكلمة اللي عليها العين والنن واضغط TAB من لوحة المفاتيح اللي تحت حرف الذال يا رجالة (أنا عارف إن فيه ناس هتدور دلوقتي على حرف الذال ومش هتلاقيه . بصوا في لوحة المفاتيح أيوا بصوا .. فوق شمال فوق شمال فوق شمال تحت زر Esc هتلاقي حرف الذال ، وتحت الذال هتلاقي Tab عليها سهمين سهم متجه لليسار وآخر لليمين .. لو ملقتش السهمين قوم حالا رجع لوحة المفاتيح للراجل اللي إنت اشتريت منه دا نصب عليك) المهم لما نضغط Tab هنلاقي الكلمة اتكتبت لوحدها .. يا سلام ونعم الكلام ونعم المساعدة شكرا يا بيل !!


ممكن أريح ايدي شوية عشان والله ايدي تعبت !!!
----------------------------------------------
طيب دي الـ m*ethod فيه حاجة تانية اسمها Property ودي ترجمتها خاصية (وتشمل زي ما قلنا الاسم أو الصفة)

تلاجة.حجم


حجم دي هي خاصية التلاجة Property فلو حبينا نضع قيمة لحجم التلاجة
تلاجة.حجم = 10 قدم


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

Application.Caption= "alsaqr"

طبعا إحنا عارفين شريط العنوان بيكون فيه اسم الملف أو المصنف متبوعا بشرطة - وبعدين اسم التطبيق Excel
طيب لو حبينا نخليه باسم منتدانا الحبيب يبقا ننفذ السطر اللي فوق
الكلمة اللي جات ورا Application اللي هي كلمة Captionدي خاصية من خواص التطبيق مش فعل يا مستر حمدي .. وطالما إنها خاصية فبنحدد ليها قيمة بعلامة يساوي (واحد هيعمل فيها مركز طيب إحنا نسينا علامة يساوي مع Quit أقولك الفعل مش بيتحدد له قيمة ، القيمة بتكون مع الخاصية أو الاسم أما الفعل له حاجات تانية اسمها بارامترات .. متخرجنا برا الموضوع)
المهم بنحدد قيمة للخاصية وليكن مثلا كلمة alsaqr وطبعا دي نص ، وعرفنا من المرة اللي فاتت إن النصوص توضع بين أقواص تنصيص " " .. اللي مش عارف يرجع يراجع من الأول أنا مش بحب أكرر المعلومة أكتر من 100 مرة ..
لو نفذنا بقا السطر اللي فات هنلاقي شريط العنوان اتغير (يا حلااااااااوة)



واحد هيقولي طيب إزاي نكتب الأسطر اللي إنت نازل دش فيها أقولك فيه قايمة اسمها Insert اختار منها Module أو فيه علامة في شريط الأدوات جنب علامة الإكسيل على يمينها علطول اختار منها Module
,وضع فيها الأسطر المراد تنفيذها يرجى مراعاة حاجتين الأسطر مبتكونش عريانة كدا لازم نغطيها بلحاف وبطانية يعني اللحاف Sub وبعدين اسم الإجراء ، والبطانية End Sub
ونحاول عشان نقدر نتعلم صح نبص كويس قبل تنفيذ الكود وبعده
يعني في المثال الأخير بص لشريط العنوان هتلاقي Excel مشرف في العنوان ، وبعد تنفيذ الكود هتلاقي alsaqr هي اللي نورت ...



وإلى لقاء في حلقة جديدة من حلقات افتح الباب
أسأل المولى عزوجل أن ينفع بهذا الرغي جموع المسلمين وأن يكون شاهدا لي لا علي ..
 
 



تم تحرير الموضوع بواسطة :Eslam Abdullah
بتاريخ:06-02-2018 10:27 مساء


أثارت هذه المشاركة إعجاب: YasserKhalil، الصقر، mohammed gurtuby، عبدالجيد،





06-02-2018 11:35 مساء
مشاهدة مشاركة منفردة [1]
YasserKhalil
menu_open عضوية موثقة
مراقب عام
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 2191
الجنس : ذكر
تاريخ الميلاد : 1-10-1978
الدعوات : 9
يتابعهم : 0
يتابعونه : 225
قوة السمعة : 6203
الاعجاب : 1854
 offline 
look/images/icons/i1.gif الحلقة الثانية من درس VBA
جزاك الله خيراً أخي الحبيب إسلام على إعادة نشر هذه الحلقات ، وأتمنى أن تفيد أعضاء المنتدى إن شاء الله
تقبل وافر تقديري واحترامي

أثارت هذه المشاركة إعجاب: Eslam Abdullah، عبدالجيد،




07-02-2018 10:42 مساء
مشاهدة مشاركة منفردة [2]
أباالحسن
menu_open
عضو فعال
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 22-08-2017
رقم العضوية : 18
المشاركات : 143
الجنس : ذكر
تاريخ الميلاد : 7-7-1979
يتابعهم : 4
يتابعونه : 8
قوة السمعة : 196
الاعجاب : 72
 offline 
look/images/icons/i1.gif الحلقة الثانية من درس VBA
جزاكم الله خيرا 


أثارت هذه المشاركة إعجاب: Eslam Abdullah، عبدالجيد،




08-02-2018 01:59 مساء
مشاهدة مشاركة منفردة [3]
mohammed gurtuby
menu_open
عضو فعال
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 11-01-2018
رقم العضوية : 3536
المشاركات : 103
الجنس : ذكر
تاريخ الميلاد : 31-12-1988
الدعوات : 3
يتابعهم : 8
يتابعونه : 2
قوة السمعة : 115
الاعجاب : 44
 offline 
look/images/icons/i1.gif الحلقة الثانية من درس VBA
شرح مبسط  ومفيد
جعله الله فى ميزان حساناتك

أثارت هذه المشاركة إعجاب: عبدالجيد،





المواضيع المتشابهه
عنوان الموضوع الكاتب الردود الزوار آخر رد
الحلقة الرابعة VBA Eslam Abdullah
9 61 عمار ابو محمد
الحلقة الثالثة VBA Excel Eslam Abdullah
1 43 Eslam Abdullah
انسى اللي فات واشتغل بالمصفوفات (الحلقة الثانية) YasserKhalil
28 1434 عبدالله باسكران
سلسلة دروس مستفادة عن فيجوال بيزك اكسل _ الحلقة الثانية محمود الشريف
3 45 YasserKhalil
سلسلة دروس مستفادة عن فيجوال بيزك اكسل _ الحلقة الأولى محمود الشريف
0 45 محمود الشريف

الكلمات الدلالية
الحلقة ، الثانية ،


 








الساعة الآن 01:19 صباحا

أعلن هنا
أعلن هنا
أعلن هنا