طباعة تصحيح أخطاء VBA | كيفية استخدام Debug.Print لتحليل إخراج كود VBA؟

Excel VBA Debug.Print

تعد Debug Print واحدة من الأدوات المفيدة المقدمة في محرر VBA لمعرفة كيفية عمل البرنامج وتساعد على تحليل التغييرات في قيم المتغيرات التي تم إنشاؤها في برنامج VBA. يظهر إخراج النافذة الفورية عندما نقوم بتشغيل البرنامج دون أي أخطاء.

يوفر Debug.print ميزتين رئيسيتين على استخدام Msgbox لعرض إخراج الكود. إنه يلغي الحاجة إلى النقر فوق الزر "موافق" في كل مرة ويعرض سجل قيم الإخراج المرتجعة إلى النوافذ الفورية. إنه يوفر الكثير من وقت المستخدمين. تشرح المقالة الحالية استخدام برنامج Excel VBA Debug Print مع العديد من الأمثلة وشرح كيفية استخدامه لتغطية الأشياء التالية.

ما هو VBA Debug Print؟

التصحيح هو كائن في VBA ويستخدم مع طريقتين تسمى Assert and Print. تعد الطباعة مفيدة في عرض الرسالة وتؤكد أنها مفيدة في تقييم الظروف. في VBA ، يتم استخدام عبارة debug.print في أي مكان من برنامج الترميز لإظهار قيم متغير أو رسائل في النافذة الفورية. هذه لا تحتاج إلى أي إقرار أو تأكيد ولا تظهر أي تأثير على الكود الذي تم تطويره. من الآمن والأفضل استخدامه في الكود في الموقف لتسهيل الوصول إلى العديد من المستخدمين. هذه مفيدة فقط في اختبار أو تقييم الكود للتأكد من أنه يعمل بشكل صحيح أم لا. طباعة المتغيرات والسلاسل والأرقام والمصفوفة والقيم في أوراق إكسل والأوراق الفارغة والنشطة.

كيفية استخدام Excel VBA Debug Print؟

VBA debug.print هي العبارة المفيدة في عرض عدد أكبر من المتغيرات في وقت واحد في النافذة الفورية. إنها الطريقة الأفضل والبديلة لإظهار المخرجات.

على سبيل المثال،

تصحيح الطباعة العد ، المجموع ، المتوسط ​​، الانحراف المعياري

كما هو موضح في المثال ، يتم فصل جميع المتغيرات بفواصل. هذا البيان قادر على نقل الإخراج إلى النافذة الفورية حتى في حالة عدم فتح النافذة. لا يتوقف تشغيل الكود كما في Msgbox. تدعم هذه المرونة المراقبة المستمرة للتغييرات في المخرجات فيما يتعلق بالتغييرات في الكود.

يتم عرض المتغيرات ، العدد ، المجموع ، المتوسط ​​، والانحراف المعياري في نفس السطر بمسافة متساوية فيما بينها. إذا لم يتم فتح النافذة الفورية ، فاتبع الخطوات التالية لمشاهدة الإخراج.

خطوات لفتح النافذة الفورية ورؤية الإخراج

  • اضغط على Ctrl + G أو انقر على قائمة "عرض" في محرر VBA.
  • اختر الخيار "نافذة فورية".
  • ضع المؤشر في النافذة وقم بتشغيل الكود مرة أخرى.
  • لاحظ الإخراج في النافذة.

أمثلة على Excel VBA Debug.Print

فيما يلي أمثلة لتوضيح استخدام طباعة التصحيح في Excel VBA.

يمكنك تنزيل قالب Excel لطباعة VBA Debug من هنا - VBA Debug Print Excel Template

مثال # 1 - عرض قيم المتغيرات

أولاً ، انتقل إلى علامة التبويب Developer ، وانقر فوق وحدات الماكرو وأنشئ ماكرو لكتابة الرمز في VBA وإضافة اسم إليه.

بعد إضافة الاسم انقر فوق إنشاء. هذا يفتح محرر VBA.

قم بتطوير برنامج صغير كما هو موضح في الشكل.

رمز:

 المتغيرات الفرعية () خافت X كعدد صحيح خافت ص كسلسلة Dim Z مثل مزدوج X = 5 Y = "John" Z = 105.632 Debug.Print X Debug.Print Y Debug.Print Z End Sub 

كما هو موضح في لقطة الشاشة ، يتم تقليل الأبعاد أو المتغيرات الثلاثة إلى X و Y و Z كعدد صحيح وسلسلة ومزدوج على التوالي. لطباعة هذه القيم ، يتم استخدام Debug.print وسيتم عرض الإخراج في النافذة الفورية. اضغط على CTRL + G لرؤية الإخراج كما هو موضح في لقطة الشاشة.

قم بتشغيل هذا الرمز باستخدام مفتاح F5 واضغط على  CTRL + G لرؤية الإخراج في النافذة الفورية.

يمكن تبسيط هذا البرنامج عن طريق فصل عبارات debug.print بفاصلة.

رمز:

 المتغيرات الفرعية () Dim X كعدد صحيح Dim Y مثل String Dim Z As Double X = 5 Y = "John" Z = 105.632 Debug.Print X، Y، Z End Sub 

بيان التصحيح هذا يطبع الإخراج في نفس السطر كما هو موضح في لقطة الشاشة.

مثال # 2 - تصحيح أخطاء الطباعة إلى ملف

يوضح هذا المثال استخدام طباعة تصحيح أخطاء VBA لعرض الإخراج إلى ملف عندما يكون طول النص مرتفعًا جدًا.

تم تطوير برنامج طباعة الإخراج على ملف كما هو موضح في الشكل.

رمز:

Sub DebugPrintToFile () Dim s As String Dim num As Integer num = FreeFile () افتح "D: \ Articles \ Excel \ test.txt" للإخراج كـ #num s = "Hello، world!" Debug.Print 'الكتابة إلى النافذة الفورية Print #num، s' write output to file Close #num End Sub

في هذا البرنامج ، يتم اعتبار متغيرين يسمى S و Num كسلسلة وعدد صحيح على التوالي. يتم استخدام العبارة المفتوحة لإنشاء ملف نصي باستخدام اختبار الاسم. يتم التصريح عن سلسلة تسمى "Hello World" في المتغير S.

عند تشغيل رمز VBA يدويًا أو باستخدام مفتاح F5 ، يتم كتابة الإخراج في النافذة الفورية ويتم عرض الملف في كل مرة في المجلد.

يظهر الإخراج إلى ملف في الشكل المذكور أدناه.

تعد طباعة الإخراج إلى ملف مفيدًا عند تقديم نص طويل.

مثال # 3 - عرض عاملي رقم في النافذة الحالية

يوضح هذا المثال استخدام العبارة debug.print لإظهار معامل الرقم.

رمز:

 حقائق فرعية عامة () عد التعتيم كرقم خاف صحيح كعدد صحيح خافت كعدد صحيح = 5 حقيقة = 1 للعدد = 1 إلى رقم الحقيقة = حقيقة * عد تصحيح العدد التالي. 

لتحديد العامل ، يتم أخذ ثلاثة متغيرات في الاعتبار بما في ذلك العدد والعدد والحقيقة. تؤخذ حلقة For لتكرار مضاعفة قيمة الحقيقة مع العدد لتحديد عاملي الرقم.

هنا ، يتم استخدام عبارة debug.print خارج حلقة "for" لعرض القيمة بعد إكمال الحلقة. يتم تحديد الإخراج على أنه.

إذا استخدمنا إفادة debug.print في داخل حلقة "for" ، فسيتم عرض حقيقة القيمة لكل وقت متكرر كما هو موضح في الشكل.

رمز:

 حقائق فرعية عامة () عدد خافت كعدد صحيح خافت كعدد صحيح خافت كعدد صحيح = 5 حقيقة = 1 للعدد = 1 إلى رقم الحقيقة = الحقيقة * العد التصحيح. طباعة الحقيقة العدد التالي النهاية الفرعية 

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

مثال # 4 - طباعة الاسم الكامل للمصنف النشط

يوضح هذا المثال كيفية طباعة اسم المصنف الحالي في النافذة الفورية

تم تطوير البرنامج كما هو موضح في الشكل.

رمز:

 Activework () عدد التعتيم طويل للعدد = 1 إلى Workbooks.count Debug.Print Workbooks (count). FullName Next count Debug.Print count End Sub 

هنا "العد" هو المتغير المأخوذ لحساب عدد المصنفات النشطة ولعرض الاسم الكامل للمصنف النشط. يتم عرض الاسم الكامل وعدد المصنفات النشطة كما هو موضح في الشكل.

يتم عرض مسار المصنف في محركات الأقراص بدقة باستخدام عبارة debug.print VBA.

أشياء للذكرى

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