VBA IsError | كيفية استخدام وظيفة ISERROR في VBA؟ (أمثلة)

وظيفة Excel VBA ISERROR

VBA IsError يلخص اسم الوظيفة نفسه الوظيفة. ستحدد هذه الوظيفة ما إذا كانت القيمة التي قدمناها هي قيمة خطأ أم لا. إذا كانت القيمة الموفرة أو القيمة المرجعية للنطاق عبارة عن قيمة خطأ ، فسنحصل على النتيجة كـ "TRUE" ، إذا لم تكن القيمة قيمة خطأ ، فسنحصل على النتيجة على أنها "FALSE".

بناء الجملة

التعبير ليس سوى القيمة التي نختبرها أو القيمة المرجعية للخلية أو تعبير الصيغة. وكما ترى فإن النتيجة ستكون "منطقية".

أمثلة

يمكنك تنزيل قالب Excel VBA ISERROR هنا - قالب Excel VBA ISERROR

مثال 1

سنرى مثالًا بسيطًا لمعرفة ما إذا كانت القيمة خطأ أم لا. على سبيل المثال ، لدينا القيمة أدناه في الخلية A1.

سنختبر ما إذا كانت هذه القيمة هي قيمة خطأ أم لا.

  • ابدأ رمز الماكرو.

رمز:

 IsError_Example1 الفرعي () End Sub 

  • قم بتعريف متغير لتخزين قيمة الخلية A1.

رمز:

 Sub IsError_Example1 () Dim ExpValue As Variant End Sub 

  • الآن قم بتعيين قيمة الخلية A1 لهذا المتغير في VBA.

رمز:

 Sub IsError_Example1 () Dim ExpValue مثل Variant ExpValue = Range ("A1"). Value End Sub 

  • اختبر الآن ما إذا كانت هذه القيمة المتغيرة خطأ أم لا.

رمز:

 Sub IsError_Example1 () Dim ExpValue مثل Variant ExpValue = Range ("A1"). Value IsError (ExpValue) End Sub 

  • قم بتضمين هذه النتيجة في مربع رسالة في VBA.

رمز:

 Sub IsError_Example1 () Dim ExpValue كمتغير ExpValue = النطاق ("A1"). القيمة MsgBox IsError (ExpValue) End Sub 

حسنًا ، لنقم بتشغيل الكود ونرى نتيجة دالة ISERROR.

النتيجة هي TRUE لأن القيمة في الخلية A1 هي # DIV / 0! وهو خطأ القسمة.

سنقوم الآن بتغيير قيمة الخلية A1 إلى "مرحبًا".

الآن قم بتشغيل الكود وانظر النتيجة.

لذلك ، تكون النتيجة FALSE الآن لأن القيمة في الخلية A1 ليست قيمة الخطأ.

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

  • # DIV / 0: يحدث هذا الخطأ بشكل أساسي لأننا عندما نحاول قسمة الرقم على صفر. يسمى هذا الخطأ "القسمة على الصفر"
  • # N / A: عندما تحاول جلب البيانات من جدول مختلف وإذا لم يتم العثور على قيمة ، فسنحصل على هذا الخطأ ويسمى هذا الخطأ "غير متوفر".
  • #NAME ؟: إذا لم يتمكن برنامج Excel من التعرف على الصيغة أو الاسم ، فسنحصل على هذا الخطأ.
  • #NULL !: عند تحديد حرف مسافة بين مراجع الخلية بدلاً من الفاصلة.
  • #NUM!: القيمة العددية المقدمة للبيانات ليست صالحة.
  • #VALUE !: عندما تقوم بالإشارة إلى قيم الخلية للحسابات الرياضية وإذا كان تنسيق الأرقام غير صحيح ، فسنحصل على هذا الخطأ.
  • #REF !: إذا كانت الخلية عبارة عن صيغة ، فإنها تحتوي على مراجع خلايا وإذا تم حذف هذه الخلية المرجعية ، فسنحصل على هذا الخطأ المرجعي.

المثال رقم 2

الآن ، انظر إلى مجموعة البيانات أدناه.

نحتاج إلى تحديد قيم الخطأ من هذه القائمة وتخزين النتيجة إما صحيحة أو خاطئة في العمود التالي.

نظرًا لأننا نحتاج إلى اختبار أكثر من خلية واحدة ، نحتاج إلى تضمين ذلك في الحلقات ، فإن الكود أدناه سيحدد قيم الخطأ.

رمز:

 Sub IsError_Example2 () Dim k As Integer For k = 2 To 12 Cells (k، 4) .Value = IsError (Cells (k، 3) .Value) Next k End Sub 

عند تشغيل هذا الرمز ، سنحصل على النتيجة أدناه في العمود 4.

حيثما توجد TRUE ، تكون هذه القيمة هي قيمة خطأ.

أشياء للذكرى

  • تقوم ISERROR بإرجاع نتيجة النوع المنطقي ، أي إما TRUE أو FALSE.
  • وهي متوفرة كدالة في ورقة العمل بالإضافة إلى وظيفة VBA.
  • إنه مفيد كجزء من مشاريع VBA الكبيرة.
  • يتعرف فقط على قيم الخطأ المحددة مسبقًا (قراءة نوع الخطأ).

$config[zx-auto] not found$config[zx-overlay] not found