Vba: كيفية دمج الخلايا بنفس القيم


يمكنك استخدام بناء الجملة التالي في VBA لدمج الخلايا التي لها نفس القيم في نطاق معين:

 Sub MergeSameCells()
    
    'turn off display alerts while merging
    Application.DisplayAlerts = False
    
    'specify range of cells for merging
    Set myRange = Range(" A1:C13 ")

'merge all same cells in range
MergeSame:
    For Each cell In myRange
        If cell.Value = cell.Offset(1, 0).Value And Not IsEmpty(cell) Then
            Range(cell, cell.Offset(1, 0)).Merge
            cell.VerticalAlignment = xlCenter
            GoTo MergeSame
        End If
    Next
    
    'turn display alerts back on
    Application.DisplayAlerts = True

End Sub

يقوم هذا الماكرو بدمج الخلايا ذات القيم نفسها في النطاق A1:C13 .

يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.

مثال: دمج الخلايا ذات القيم نفسها في VBA

لنفترض أن لدينا مجموعة البيانات التالية في برنامج Excel والتي تحتوي على معلومات حول النقاط التي سجلها العديد من لاعبي كرة السلة:

لنفترض أننا نريد دمج الخلايا التي لها نفس القيم في صفوف متتالية.

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

 Sub MergeSameCells()
    
    'turn off display alerts while merging
    Application.DisplayAlerts = False
    
    'specify range of cells for merging
    Set myRange = Range(" A1:C13 ")

'merge all same cells in range
MergeSame:
    For Each cell In myRange
        If cell.Value = cell.Offset(1, 0).Value And Not IsEmpty(cell) Then
            Range(cell, cell.Offset(1, 0)).Merge
            cell.VerticalAlignment = xlCenter
            GoTo MergeSame
        End If
    Next
    
    'turn display alerts back on
    Application.DisplayAlerts = True

End Sub

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

يقوم VBA بدمج الخلايا ذات القيم نفسها

لاحظ أنه تم دمج كل خلية تحتوي على نفس اسم المؤتمر واسم الفريق .

لاحظ أننا استخدمنا عبارة cell.VerticalAlignment = xlCenter لتحديد ضرورة توسيط النص عموديًا في الخلايا المدمجة.

مصادر إضافية

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

فبا: كيفية حساب عدد الأعمدة المستخدمة
فبا: كيفية تغيير ارتفاع الصف
فبا: كيفية تغيير عرض العمود

Add a Comment

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