فبا: كيفية إزالة الأحرف من سلسلة


يمكنك استخدام طريقة Replace() في VBA لإزالة الأحرف من سلسلة.

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

مثال 1: استخدم VBA لإزالة كافة تكرارات الأحرف في سلسلة (حساسة لحالة الأحرف)

لنفترض أننا نريد إزالة “هذا” من كل سلسلة.

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

 Sub RemoveChar()
Dim i As Integer

For i = 2 To 8
    Range(" B " & i) = Replace(Range(" A " & i), " this ", "")
Next i
End Sub

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

يعرض العمود B كل سلسلة من السلاسل الموجودة في العمود A مع إزالة كل تكرار لكلمة “هذا”.

لاحظ أن هذا الماكرو حساس لحالة الأحرف .

أي أنه يتم حذف كل تواجد لـ “هذا” ولكن يتم ترك كل تواجد لـ “هذا” بمفرده.

المثال 2: استخدم VBA لإزالة كافة تكرارات الأحرف في سلسلة (غير حساس لحالة الأحرف)

لنفترض أننا نريد إزالة “هذا” (بغض النظر عن الحالة) من كل سلسلة.

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

 SubRemoveChar ()
Dim i As Integer

For i = 2 To 8
    Range(" B " & i) = Replace(LCase(Range(" A " & i)), " this ", "")
Next i
End Sub

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

يعرض العمود B كل سلسلة من السلاسل الموجودة في العمود A مع إزالة كل تكرار لكلمة “هذا”.

لاحظ أن هذا الاستبدال ليس حساسًا لحالة الأحرف .

أي أنه تتم إزالة كل تكرار لكلمة “هذا” (سواء كانت مكتوبة بأحرف كبيرة أم لا).

لقد تمكنا من تحقيق ذلك باستخدام طريقة LCase لتحويل كل سلسلة في العمود A أولاً إلى أحرف صغيرة قبل البحث عن “هذا” في كل سلسلة.

مثال 3: استخدم VBA لإزالة تكرارات N الأولى للأحرف في السلسلة

لنفترض أننا نريد إزالة التواجد الأول فقط لـ “هذا” (بغض النظر عن الحالة) من كل سلسلة.

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

 SubRemoveChar ()
Dim i As Integer

For i = 2 To 8
    Range(" B " & i) = Replace(LCase(Range(" A " & i)), " this ", "", Count:=1)
Next i
End Sub

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

يعرض العمود B كل سلسلة من السلاسل الموجودة في العمود A مع إزالة التواجد الأول لـ “هذا” فقط.

لاحظ أننا استخدمنا Count:=1 لإزالة التكرار الأول لسلسلة محددة فقط، ولكن يمكنك استبدال 1 بأي قيمة تريد إزالتها بدلاً من التكرارات الأولى n لسلسلة معينة.

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

مصادر إضافية

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

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

Add a Comment

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