برمجة اكسيل–Excel Programming–الجزء الثالث
الآن حان وقت التجربة اضغط أحد الخلايا بالصفحة اختر Macro من القائمة التي تظهر باختيار Macro من القائمة Tools .. ثم اضغط اسم الماكروا " تعديل الخريطة " في الصندوق الحواري ثم اضغط المفتاح Run لتري أن الخريطة ثم تعديلها .
اضغط أحد الخلايا بالصفحة اختر Macro من القائمة التي تظهر باختيار Macro من القائمة Tools ... ثم اضغط اسم الماكرو "إعدة – الخريطة " فى الصندوق الحواري ثم اضغط المفتاح Run لتري أن الخريطة تم إعادتها .
يمكنك عرض شريط الأدوات Visual Basic في Excel وذلك بالضغط بالمفتاح الأيمن علي أى شريط أدوات يظهر لك قائمة اختر Visual Basic ليعرض لك الشريط .
ستجد في شريط الأدوات Visual Basic الأيقونة Record Macro التي تعرض لك الصندوق الحواري Record Macro لتكتب اسم الماكرو ثم تضغط Ok .. لتبدأ فى التسجيل .
وستجد في شريط الأدوات Visual Basic الأيقونة Run Macro بالضغط عليها يظهر لك الصندوق الحواري Macro ... اضغط اسم الماكرو الذي تريد ثم اضغط المفتاح Run ليتم الماكرو تنفيذه .
تفهم السياق العام لأكواد الماكرو .
لا يجب أن تحفظ كل الأوامر لكي تتعامل مع الأكواد التي يكتبها الماكرو بكفاءة ولكن يجب أن تتفهم السياق العام للكود لفهم الكود ..
يجب أن تبدأ قراءة السطور من الأخر وليس أولها فمثلا السطر الأول فى الماكرو " تعديل – الخريطة" Activate نشط ("Chart 1 " ) Chart Object الخريطة المسماة Chart 1 في الصفحة الحالية النشطة Active Sheet
لنري أين تقع ("Chart 1 " ) في Excel اضغط الخريطة وتأمل المربع Name Box ستجد أنه كتب لك Chart Area هذا ليس اسم الخريطة ولكن هو المساحة المخصص لها والتي يختارها Excel تلقائيا عن اختيار الخريطة .
لعرض اسم الخريطة اضغط أحد الخلايا لإلغاء تحديد مساحة الخريطة Chart Area ثم اضغط الخريطة بالماوس أثناء ضغط مفتاح Ctrl من لوحة المفاتيح ليتم تحديد الخريطة ويظهر لك دوائر لتحديدها وليس مربعات كما يحدث عند تحديد مساحة الخريطة Chart Area ليظهر لك اسم الخريطة فى مربع Chart 1 Name Box " .
بهذا المنهج من التفكير والتحليل يمكنك تفهم الكثير من السياق العام لأكواد الماكرو .
مشاكل وسلبيات أكواد الماكرو .
ويجب أن تتفهم السلبيات التي يجب أن تتلافها فى الأكواد التي يكتبها الماكرو لك لتحصل علي أكواد أكثر فاعلية .. وهما مشكلتان أو سلبيتان متكررتان فى جميع أكواد الماكرو .
من السطر الأول للكود أشعر بالمشكل الاولي أو السلبية الأولي فى هذا الكود وستجدها في كل الأكواد التي ينتجها الماكرو ... تابع معي للتعرف عليها .
جرب الماكرو بالتحرك إلى الشريط Visual Basic واضغط الأيقونة Run Macro يظهر لك الصندوق الحواري Macro اضغط اسم الماكرو اذلي تريد ثم اضغط Run ستجد أنه يعمل .
من السطر الثاني للكود أشعر بالمشكلة الثانية أو السلبية الثانية في هذا الكود وستجدها في كل الأكواد التي ينتجها الماكرو ... تابع معي للتعرق عليها .
وتكمن هذه المشكلة فى أمانة الماكرو فى عمله .. فمثلا عند تحديد الخريطة فى السطر الأول تلقائيا يقوم Excel بتحديد مساحة الخريطة Chart Area كما رأينا في السطر الثاني في حين أننا واقعيا لا نرغب في عمل ذلك ... نعم هذا ليس أى ضرر سوا جعل الأكواد صعبة التعديل وبطيئة التنفيذ ولكن إذا دربت نفسك علي إزالة هذه الأكواد ستجعل الأكواد أسهل فى فهمها مما يسهل تعديلها عليك بشكل كبير.
تحرك إلى محرر VBA .. ثم تحرك إلى الماكرو " تعديل – الخريطة " ضع علامة " . " أمام السطر الثاني في الماكرو " تعديل – الخريطة " ستجد أنه تحول غلى اللون الأخضر إى تحول إلى سطر من سطور التعليق Comments .
وجرب الماكرو وستجد أنه يعمل بكفاءة .
ضع علامة " . " أمام السطر الخامس في الماكرو " تعديل – الخريطة " ستجد أنه تحول إلى اللون الأخضر أى تحول إلى سطر من سطور التعليق Comments .
وجرب الماكرو ستجد أنه يعمل بكفاءة .
تحرك إلى محرر VBA .. ثم تحرك إلى الماكرو " إعادة – الخريطة " .. ضع علامة " ." أمام السطر الثاني والخامس والسادس والسابع والثامن فى الماكرو " إعادة – الخريطة " ستجد أنه تحول إلى اللون الأخضر أى تحول إلى سطر من سطور التعليق Comments .
وجرب الماكرو ستجد أنه يعمل بكفاءة .
سمكنك توقع هذه السطور الزائدة بمقارنة عدد سطور الكود التي كتبها لك الماكرو بعدد الأوام التي تريد تنفيذها في حالتنا نريد فى الماكرو الأول" تعديل – خريطة " تنفيذ الآتي:
1 – تحديد الخريطة .
2 – تغير نوعها .
3 – اخفاء مفاتيح الخريطة Legend .
4 – تحديد الخلية A1 .
الطبيعي أن نحصل علي أربع سطور أكواد تقريبا ... وليس ست توقع اثنان زائدين جرب ودع علامة "." في بدايتهم جرب الماكرو وستصل بالمحاولة والخطأ لسطور الأكواد الزائدة .
نريد في الماكرو الثاني " إعادة – خريطة " تنفيذ الآتي:
1 – تحديد الخريطة
2 – تغير نوعها
3 - اظهار مفتح الخريطة Legend .
4 – تحديد الخلية A1 .
الطبيعي أن نحصل علي أربع سطور أكواد تقريبا ... وليس تسع توقع خمس زائدين جرب ودع علامة " ." في بدايتهم جرب الماكرو وستصل بالمحاولة والخطأ لسطور الأكواد الزائدة .
كانت هذه محاولة جادة لتنتقل لك خبرات تراكمت لفترات طويلة من البرمجة للتطبيقات .
أرجو أن تتأملها جيدا وستجد أناه تصل بك لنتائج رائعة بلقليل من المجهود والخبرة مع VBA .
تعليقات
إرسال تعليق