Vba: كيفية استخدام isnumeric للتحقق مما إذا كانت الخلية رقمًا
يمكنك استخدام الدالة IsNumeric في VBA للتحقق مما إذا كانت الخلية المحددة رقمًا.
ستعيد هذه الدالة True إذا تم التعرف على قيمة خلية معينة كرقم.
وإلا فإن الدالة سترجع خطأ .
إليك طريقة شائعة لاستخدام هذه الوظيفة عمليًا:
SubCheckNumeric ()
Dim i As Integer
For i = 1 To 9
If IsNumeric(Range(" A " & i)) = True Then
Range(" B " & i) = " Numeric Value "
Else
Range(" B " & i) = " Not a Numeric Value "
End If
Next i
End Sub
سيتحقق هذا الماكرو المحدد مما إذا كانت كل خلية في النطاق A1:A9 عبارة عن رقم.
إذا كانت الخلية عبارة عن رقم، فسيتم إرجاع “القيمة الرقمية” في الخلية المقابلة في النطاق B1:B9 .
إذا لم تكن الخلية رقمًا، فسيتم إرجاع “ليست قيمة رقمية” بدلاً من ذلك.
يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.
مثال: كيفية استخدام IsNumeric في VBA
لنفترض أن لدينا عمود القيم التالي في Excel:
لنفترض أننا نريد التحقق مما إذا كانت كل خلية في العمود A عبارة عن رقم.
يمكننا إنشاء الماكرو التالي للقيام بذلك:
SubCheckNumeric ()
Dim i As Integer
For i = 1 To 9
If IsNumeric(Range(" A " & i)) = True Then
Range(" B " & i) = " Numeric Value "
Else
Range(" B " & i) = " Not a Numeric Value "
End If
Next i
End Sub
عندما نقوم بتشغيل هذا الماكرو، نحصل على الإخراج التالي:
يعرض العمود B نتيجة تخبرنا ما إذا كان قد تم التعرف على كل خلية مطابقة في العمود A كرقم أم لا.
فيما يلي بعض الأشياء المثيرة للاهتمام التي يجب ملاحظتها في النتيجة:
- يتم التعرف على الأرقام ذات المنازل العشرية كأرقام.
- يتم التعرف على النسب المئوية كأرقام.
- لا يتم التعرف على التواريخ كأرقام.
- لا يتم التعرف على النصوص التي تحتوي على أرقام كأرقام.
ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة VBA IsNumeric هنا .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في VBA:
كيفية تحويل السلسلة إلى int في VBA
كيفية تحويل سلسلة إلى مضاعفة في VBA
كيفية التحقق مما إذا كانت السلسلة تحتوي على سلسلة أخرى في VBA