Vba kodunu kullanarak excel'deki hücreleri birleştirme

VBA’da, bir hücre aralığını, hatta birden fazla aralığı tek bir hücrede birleştirmek için kullanabileceğiniz bir “BİRLEŞTİRME” yöntemi vardır. Bu yöntemin isteğe bağlı bir “Across” argümanı vardır. TRUE belirtirseniz aralıktaki her satırı ayrı ayrı birleştirir, FALSE belirtirseniz tüm aralığı tek bir satırda birleştirir.

vba kullanarak hücreleri birleştirme ve gruplarını çözme

Hücreleri birleştirmek için VBA’yı kullanma adımları:

  1. Öncelikle birleştirmek istediğiniz hücre aralığını tanımlamanız gerekir.
    define-the-range-of-a-cell-want-to-merge
  2. Bundan sonra, özellik ve yöntemlerin listesini almak için bir nokta (.) yazın ve bu listeden “Birleştir” seçeneğini seçin veya doğrudan yazabilirsiniz.
    type-a-dot-to-get-the-list-of-properties
  3. Bundan sonra “Across” argümanını DOĞRU veya YANLIŞ olarak ayarlamanız gerekir.
    define-the-argument-across
  4. Sonunda aralığı birleştirmek için bu kodu çalıştırın.

İşte kod.

 Range("A1:A2").Merge False

Ve aralığın tamamındaki satırları birleştirmek istiyorsanız çapraz bağımsız değişkeni için TRUE’yu kullanabilirsiniz.

aralıkta birleştirmek istiyorsanız doğru yazın
 Selection.Merge Across:=True

Yukarıdaki kodda aralık olarak, birleştirme yöntemi olarak ve genelinde doğru olarak seçim yaptınız. Ve seçilen aralıktaki tüm satırları birleştirdi.

Şimdi diyelim ki başka bir çalışma sayfasındaki hücre aralığını birleştirmek istiyorsunuz, önce bunu etkinleştirmenize gerek yok. Önce e-tabloya başvurabilir ve ardından birleştirmek istediğiniz değişiklikle birleştirme yöntemlerini kullanabilirsiniz.

 Worksheets("Sheet1").Range("A1:A2").Merge

Benzer şekilde, çalışma kitabının adını belirterek bir çalışma kitabına da başvurabilirsiniz.

 Workbooks("Book1.xlsx").Worksheets("Sheet1").Range("A1:A2").Merge

Bir aralığı birleştirme ve hücre içeriğini hizalama

Artık iki veya daha fazla hücreyi birleştirdiğinizde hücredeki içeriği hizalamanız gerekir. A1 ve A2 hücrelerini birleştirdiğiniz ve hücrelerdeki değerin alta hizalandığı aşağıdaki anlık görüntüye bakın. Bu sorunu çözmek için hizalama özelliğini kullanabilir ve hücre içeriğini ortaya ve ortaya hizalayarak okumanızı kolaylaştırabilirsiniz.

bir aralığı birleştirme ve hücre içeriğini hizalama
 With Range("A1:A2") .Merge .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter End With

Metni birleştir ve birleştir

Gerçek hayattan bir senaryodan bahsedelim. Bir dizi hücrede metniniz var ve bu hücreleri birleştirmeniz gerekiyor, ancak sahip olduğunuz içeriği kaybetmek istemezsiniz. Her birini kullanarak tüm aralığın üzerine bir kod döngüsü yazabilir ve metni birleştirip ardından onu sondaki birleştirilmiş aralığa ekleyebilirsiniz.

birleştir-test et ve birleştir
  1. İlk bölümde aralık değerlerini saklamak ve kendilerini ayarlamak için kullanabileceğiniz değişkenler bulunuyor.
  2. İkinci bölümde, her hücrenin değerlerini birleştirerek yeni bir dize oluşturabileceğiniz bir LOOP’unuz var.
  3. Üçüncü bölümde aralığı birleştirin, birleştirilmiş dizeyi ekleyin, sözcük kaydırma uygulayın ve hücre içeriğini hizalayın.

İşte kodun tamamı.

 Sub vba_merge_with_values() Dim val As String Dim rng As Range Set rng = Range("A1:A10") For Each Cell In rng val = val & " " & Cell.Value Next Cell With rng .Merge .Value = Trim(val) .WrapText = True .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter End With End Sub

Yorum ekle

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir