كيفية استخدام البديل في vba (مع مثال)


يمكنك استخدام الأسلوب Substitute() في VBA لاستبدال كافة تكرارات نص معين في سلسلة بنص جديد.

تستخدم هذه الطريقة بناء الجملة الأساسي التالي:

البديل (نص، نص_قديم، نص_جديد، رقم_المثيل)

ذهب:

  • النص : النص الذي تريد استبدال الأحرف فيه
  • Old_text : النص المراد استبداله
  • New_text : النص الذي سيتم استخدامه كبديل
  • Instance_num ( اختياري ) : أي مثيل للنص القديم المطلوب استبداله. إذا لم يتم تحديد أي شيء، فسيتم استبدال كافة تكرارات النص القديم.

توضح الأمثلة التالية كيفية استخدام هذه الطريقة عمليًا.

مثال: كيفية استخدام البديل في VBA

لنفترض أن لدينا قائمة التعبيرات التالية في Excel:

لنفترض أننا نريد بدلاً من ذلك استبدال كل مسافة في كل خلية بفاصلة.

يمكننا إنشاء الماكرو التالي للقيام بذلك:

 Sub SubstituteText()

Dim rng As Range, cell As Range
Set rng = Range(" A2:A9 ")

For Each cell In rng
    cell = WorksheetFunction.Substitute(cell, " ", ",")
Next
    
End Sub

عندما نقوم بتشغيل هذا الماكرو، نحصل على الإخراج التالي:

لاحظ أنه تم استبدال كل مسافة في كل خلية في العمود A بفاصلة.

لاحظ أنه يمكننا أيضًا استخدام الصيغة التالية لاستبدال كل مسافة بلا شيء:

 Sub SubstituteText()

Dim rng As Range, cell As Range
Set rng = Range(" A2:A9 ")

For Each cell In rng
    cell = WorksheetFunction.Substitute(cell, " ", "")
Next
    
End Sub

عندما نقوم بتشغيل هذا الماكرو، نحصل على الإخراج التالي:

لاحظ أنه تم استبدال كل مساحة في كل خلية في العمود A بلا شيء.

بمعنى آخر، قمنا بإزالة كل المسافات من كل خلية في العمود أ.

ملاحظة : يمكنك العثور على الوثائق الكاملة لأسلوب VBA البديل هنا .

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى باستخدام VBA:

فبا: كيفية حساب تكرارات الأحرف في سلسلة
VBA: كيفية التحقق مما إذا كانت السلسلة تحتوي على سلسلة أخرى
VBA: كيفية حساب الخلايا التي تحتوي على نص معين

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *