Apa itu Union?
Union merupakan sebuah konsep yang memungkinkan kita untuk menggabungkan dua range atau lebih menjadi satu.
Jika sebelumnya kamu telah belajar tentang Intersect dimana Fungsi ini mengambil perpotongan antara dua range atau lebih.
Union justru sebaliknya yaitu mengambil nilai yang digabungkan antara range1 dan range2.
Untuk lebih jelasnya, coba simak Ilustrasinya dibawah ini :

pada gambar diatas, Range 1 yang asalnya dari B2:F6 dan Range 2 dari D6:H10 ketika digabungkan dengan Union, maka rangenya menjadi luas menjadi B2:F6,D6:H10
Fungsi Union tentu saja berfungsi untuk menggabungkan Range, tapi dibalik itu ada beberapa manfaat yang bisa kita gunakan.
Berikut point penting dalam Union
Dengan Union, kita dapat menggabungkan beberapa range menjadi satu range. Sehingga range yang berbeda-beda bisa disimpan dalam 1 variable saja.
Setelah menggabungkan beberapa range menggunakan Union, kita bisa melakukan operasi atau manipulasi pada seluruh range tersebut secara bersamaan. Karena range yang berbeda-beda tersebut sudah berada dalam 1 variable.
Dengan cara ini, maka langkah-langkah dalam script VBA menjadi lebih efektif dan efisien.
Contoh kasus
Misalnya jika kita ingin mengubah Font Bold di Range A1:A5 dan juga di Range F7:F12, dimana Range ini tidak berdekatan.
Maka biasanya sinyak yang dibuat akan seperti ini :
Sub UbahBold()
Range("A1:A5").Font.Bold = True
Range("F7:F12").Font.Bold = True
End Sub
jika kita menggunakan Union, proses menjadi lebih efisien dimana Range digabungkan terlebih dahulu sebelum di manipulasi.
Sehingga sintaknya menjadi seperti ini :
Sub UbahBold()
Dim rngUnion As Range
Set rngUnion = Union(Range("A1:A5"), Range("B7:B12"))
rngUnion.Font.Bold = True
End Sub