كثيراً ما يطرح هذا التساؤل خصوصاً إذا كان الملف يحتوي على الكثير من المعادلات ، ويبدأ المستخدم يعاني من بطء وثقل الملف بسبب المعادلات الكثيرة ، ويبدأ في البحث عن الأكواد كبديل للمعادلات ، ولذا آثرت أن أقدم طريقة بدائية جداً وهي ليست طريقة احترافية ، ولكنها تؤدي الغرض لهذا الموضوع.
سنقوم بضرب مثال لمعادلة ترقيم في العمود الأول اعتماداً على المدخلات في العمود الثاني ، حيث يحتوي العمود الأول (النطاق A2:A11 على معالة ترقيم بسيطة)
بفرض أن لديك في ورقة العمل Sheet1 ، النطاق B2:B11 فيه مجموعة أسماء ، ولديك في النطاق A2:A11 معادلة تقوم بعملية الترقيم والمعادلة بهذا الشكل :
CODE
=IF(B2="","",SUBTOTAL(103,$B$2:B2))
والمطلوب تحويل المعادلة إلى كود والحصول على القيم فقط دون المعادلة ، أي يتم الحصول على نفس النتيجة وبنفس المعادلة دون الاحتفاظ بالمعادلة نفسها
الكود في الملف المرفق وتم شرح لأسطر الكود في الفيديو لكي يتبين لكم طريقة التعديل على الكود بما يتناسب معكم
شرح الكود كتابة لمن يتعثر عليه مشاهدة الفيديو
----------------------------------------------
السطر الأول تعريف المتغير lr لمعرفة رقم آخر صف به بيانات في العمود الثاني (عمود الأسماء)
السطر الثاني بدء التعامل مع ورقة العمل المسماة Sheet1 ونستخدم جملة With .... End With لتحقيق المطلوب وهو التعامل مع ورقة العمل Sheet1، وفائدة هذه الجملة أنها تختصر التعامل مع الجمل البرمجية حيث أنه بدلاً من أن تكتب في كل الأسطر Sheets("Sheet1") في كل سطر للإشارة إلى ورقة العمل ، باستخدام جملة With ... End With ستقوم باستبدال الكلمة بنقطة فقط
السطر الثالث تعيين قيمة للمتغير lr وهذا يعتمد على العمود المطلوب معرفة رقم آخر صف به وهو العمود الثاني ، ويخزن المتغير رقم آخر صف للتعامل مع النطاق بدايةً من B2 إلى آخر صف به بيانات في العمود B
السطر الرابع جملة With داخل جملة With الأولى وهو للتعامل مع النطاق بدايةً من الخلية A2 إلى آخر خلية اعتماداً على العمود الثاني كما ذكرنا
السطر الخامس استخدام كلمة Formula لوضع المعادلة وتوضع المعادلة بالكامل بما في ذلك علامة يساوي بين أقواس تنصيص ، وتتم بعض التعديلات على المعادلة بالشكل التالي : الفاصلة المنقوطة في المعادلة تستبدل بفاصلة عادية ، وأقواس التنصيص الموجودة في المعادلة توضع بين أقواس تنصيص أخرى
السطر السادس يتم تحويل المعادلات التي تم إدراجها في السطر السابق إلى قيم
السطر السابع والثامن لإغلاق جملتي With وتنتهي بكلمة End With
وأترككم مع شرح الفيديو
*** إذا أعجبكم الفيديو لا تنسوا الضغط على زر إعجاب Like وعمل اشتراك بالقناة Subscribe وتفعيل زر الجرس ليصلكم كل جديد
المشاركة الأصلية كتبت بواسطة: YasserKhalil بارك الله فيك أخي علي سالم والحمد لله أن وجدت ضالتك ويا رب تستفيد وتفيد غيرك
جزاك الله خيراً استاذنا وأنا حاسس أن الدرس دا تم إعداده خصيصاً من أجلي بارك الله لك استاذنا لكن لي سؤال بالنسبة لدوال الصفيف كيف تنفذ بهذه الطريقة (يعني معروف ان دوال الصفيف لها نظام في الإدراج يعني لازم اضغط ثلاث مفاتيح مع بعض من أجل تفعيل المعادلة) يا ريت لو شرح للطريقة وعذراً على الإطالة وجزاك الله خيراً استاذنا
بارك الله فيك أخي العزيز علي
لو شفت الفيديو هتلاقيني استخدمت الخاصية Formula .. لما تيجي تستخدم معادلات الصفيف هتستخدم FormulaArray .. بس خلاص
بس بالنسبة لمعادلات الصفيف بيكون فيه تحفظ إنها لا تستخدم مع النطاق بالكامل في بعض الأحيان ..
عموماً جرب ولو واجهتك أي مشكلة اطرحها في موضوع جديد