Vba'da union nasıl kullanılır (örnekle)
Birden çok aralığı tek bir aralıkta birleştirmek için VBA’daki Union yöntemini kullanabilirsiniz.
Bu yöntemi pratikte kullanmanın yaygın bir yolu:
SubUseUnion ()
Set UnionRange = Application.Union(Range("A1:A10"), Range("C1:C10"))
UnionRange.Formula = "=RANDBETWEEN(1, 100)"
End Sub
Bu özel makro, A1:A10 ve C1:C10 aralığını tek bir aralıkta birleştirir, ardından bu birleştirilmiş aralıktaki her değere =RANDBETWEEN(1, 100) Excel formülünü atar ve bu, 1 ile 100 arasında rastgele bir değer üretir.
Aşağıdaki örnekte VBA’da Union yönteminin pratikte nasıl kullanılacağı gösterilmektedir.
Örnek: VBA’da Aralıkları Birleştirmek için Union Nasıl Kullanılır
A1:A10 ve C1:C10 aralıklarını birleştirmek amacıyla Union yöntemini kullanmak için VBA’da aşağıdaki makroyu tanımlayabiliriz:
SubUseUnion ()
Set UnionRange = Application.Union(Range("A1:A10"), Range("C1:C10"))
UnionRange.Formula = "=RANDBETWEEN(1, 100)"
End Sub
Bu makroyu çalıştırdığımızda aşağıdaki çıktıyı alıyoruz:
A1:A10 ve C1:C10 aralığındaki her hücre artık 1 ile 100 arasında rastgele bir tamsayı döndüren =RANDBETWEEN(1, 100) formülünü içeriyor.
Ayrıca Union yöntemine ikiden fazla aralık sağlayabileceğimizi unutmayın.
Örneğin, üç farklı aralığı birleştirmek için Union yöntemini kullanan aşağıdaki makroyu oluşturabilir, ardından her aralığın hücresine bir formül ekleyebiliriz:
SubUseUnion () Set UnionRange = Application.Union(Range("A1:A10"), Range("C1:C10"), Range("D1:D5" )) UnionRange.Formula = "=RANDBETWEEN(1, 100)" End Sub
Bu makroyu çalıştırdığımızda aşağıdaki çıktıyı alıyoruz:
Bir araya getirdiğimiz üç aralığın tümü artık RANDBETWEEN formülünü içeriyor.
Not : VBA Union yöntemine ilişkin tüm belgeleri burada bulabilirsiniz.
Ek kaynaklar
Aşağıdaki eğitimlerde VBA’da diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
VBA’da kesişim nasıl kullanılır?
VBA’da kullanılan sütunların sayısı nasıl sayılır?
VBA’da bir çalışma kitabındaki sayfaların sayısı nasıl sayılır?