Dizeleri birleştirmek için vba nasıl kullanılır?
VBA kodunu kullanarak iki dizeyi birleştirmek için ve işaretini kullanmanız gerekir. İki dize arasında bir ve işareti kullanarak bunları birleştirebilir ve ardından bu yeni değeri bir hücreye, değişkene veya mesaj kutusuna atayabilirsiniz. Benzer şekilde ikiden fazla değeri de birleştirebilirsiniz.
Daha sonra bunu anlamak için basit bir örnek göreceğiz.
Birleştirmek için VBA’yı kullanma adımları
- İlk önce çift tırnak kullanarak ilk dizeyi girin.
- Bundan sonra bir ve işareti yazın.
- Daha sonra çift tırnak kullanarak ikinci metni girin.
- Sonunda bu değeri bir hücreye veya değişkene atayın veya görmek için bir mesaj kutusu kullanın.
Sub vba_concatenate() Range("A1") = "Mike" & "Ross" End Sub
Sınırlayıcıyla birleştir
Ayrıca, yalnızca üçüncü bir ve işareti ekleyerek iki dize arasında bir sınırlayıcı kullanabilirsiniz. Aşağıdaki kodu göz önünde bulundurun.
Range("A1") = "Mike" & "-" & "Ross"
Yukarıdaki kodda, iki dizede bir sınırlayıcı kullandınız ve bunları yalnızca ve işareti kullanarak birleştirdiniz. Yani temel olarak, ne zaman bir şeyi içine almanız gerekiyorsa, onun içinde ve işareti kullanmanız gerekir.
Değişkenleri kullanarak birleştirme
Ayrıca değerleri değişkenlerde saklayabilir ve daha sonra bu iki değişkenin değerlerini birleştirebilirsiniz. Aşağıdaki kodu göz önünde bulundurun.
Yukarıdaki kodda değişken olarak bildirdiğiniz değişkenler var ve daha sonra bu değişkenlere değerler atadınız. Sonunda, üç değişkeni birleştirmek için ve işareti kullandık ve sonucu A1 hücresine atadık.
VBA kullanarak bir aralığı birleştirme
Ayrıca VBA’yı kullanarak bir hücre aralığındaki değerleri birleştirebilirsiniz. Aşağıdaki makroyu göz önünde bulundurun.
Sub vba_concatenate() Dim rng As Range Dim i As String Dim SourceRange As Range Set SourceRange = Range("A1:A10") For Each rng In SourceRange i = i & rng & " " Next rng Range("B1").Value = Trim(i) End Sub
Yukarıdaki kodda, birleştirmek istediğiniz aralıkta döngü yapmak için FOR NEXT’i (Döngüler İçin) kullandınız.
Böylece (A1:A10) aralığındaki her hücreye gider ve bu değeri I değişkeninde saklar ve her yinelemede bir değeri birleştirmek için bir ve işareti kullanır. Sonunda, birleştirilmiş kanalı B1 aralığına ayarlayın.
Ve aşağıdaki kod seçilen aralığın değerlerini birleştirir. Tek yapmanız gereken bir aralık seçip kodu çalıştırmak.
Dim rng As Range Dim i As String For Each rng In Selection i = i & rng & " " Next rng Range("B1").Value = Trim(i)
Bir sütunun veya satırın tamamını birleştirme
Bir sütunun veya satırın tamamını birleştirmek istiyorsanız, bu durumda döngü yöntemini kullanmamak daha iyidir. Bir satırın veya sütunun tamamını birleştirebilen “TextJoin” çalışma sayfası işlevini kullanabilirsiniz (aşağıdaki kodu göz önünde bulundurun).
'join values from column A. Dim myRange As Range Dim myString As String Range("B1") = WorksheetFunction.TextJoin(" ", True, Range("A:A")) 'join values from row 1. Dim myRange As Range Dim myString As String Range("B1") = WorksheetFunction.TextJoin(" ", True, Range("1:1"))