Vba: cara menggabungkan sel dengan nilai yang sama


Anda dapat menggunakan sintaks berikut di VBA untuk menggabungkan sel dengan nilai yang sama dalam rentang tertentu:

 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

Makro khusus ini menggabungkan sel dengan nilai yang sama dalam rentang A1:C13 .

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: Gabungkan Sel dengan Nilai yang Sama di VBA

Misalkan kita memiliki kumpulan data berikut di Excel yang berisi informasi tentang poin yang dicetak oleh berbagai pemain bola basket:

Misalkan kita ingin menggabungkan sel dengan nilai yang sama dalam baris yang berurutan.

Kita dapat membuat makro berikut untuk melakukan ini:

 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

Saat kami menjalankan makro ini, kami menerima keluaran berikut:

VBA menggabungkan sel dengan nilai yang sama

Perhatikan bahwa setiap sel yang berisi nama konferensi dan nama tim yang sama telah digabungkan.

Perhatikan bahwa kami menggunakan pernyataan cell.VerticalAlignment = xlCenter untuk menentukan bahwa teks harus dipusatkan secara vertikal di sel yang digabungkan.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di VBA:

VBA: Cara menghitung jumlah kolom yang digunakan
VBA: Cara mengubah tinggi baris
VBA: Cara mengubah lebar kolom

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *