VBA Bölme İşlevi (Örnekler) - Excel VBA'da Dizeleri Nasıl Bölünür?

Excel'de VBA Bölme İşlevi nedir?

VBA'daki bölme işlevi, dizeleri işleve sağlanan bir sınırlayıcıya ve bir karşılaştırma yöntemine dayalı olarak birden çok alt dizeye bölmek için kullanılan çok kullanışlı bir dize işlevidir; bir dizeyi alt dizeye dönüştüren ancak bölme işlevi bir birden fazla alt dizeye dizeler.

Normal çalışma sayfasında SOL işlevi, ORTALAMA işlevleri ve Excel'de SAĞ, cümlenin bölümünü çıkarmak için excel'de metin işlevleri olarak kullanılır. Örneğin adın, ikinci adın ve soyadın çıkarılması, gördüğümüz yaygın senaryolardır. Ancak VBA'da, sizin için benzer bir işi yapacak olan SPLIT adlı daha çok yönlü işleve sahibiz. SPLIT, Excel VBA'da sağlanan cümleyi sınırlayıcıya göre bölebilen yerleşik bir işlevdir. Örneğin, e-posta adresini farklı bölümlere ayırmak isterseniz, e-posta adresindeki ortak öğe tüm e-posta kimliklerinde "@" olur, dolayısıyla burada "@" sınırlayıcı olur.

VBA Bölünmüş Dize İşlevi

Diğer tüm işlevler gibi, bölünmenin de kendi sözdizimi vardır. Aşağıda excel VBA Split string fonksiyonunun parametreleri bulunmaktadır.

  • Değer veya İfade: Bu, bölmeye çalıştığımız gerçek değerden başka bir şey değil. Örneğin, adı ve soyadı ayırmak istiyorsanız, tam ad buradaki değerdir.
  • (Sınırlayıcı): Değer veya İfadeyi bölmek için ortak öğe nedir? E-posta kimliğinin "@" ortak öğesidir, adreste virgül (,) ortak öğedir. Bunu göz ardı ederseniz, boşluk karakterini varsayılan değer olarak kabul eder.
  • (Sınır): Sağladığınız Değer veya İfadeden kaç tane alt dize istediğiniz. Örneğin, değer "Benim adım Excel" ise, limit olarak 3 girerseniz, sonucu "Benim", "adım", "Excel" gibi üç satırda gösterecektir.
  • (Karşılaştır): Karşılaştırma argümanını kullanmadığımız için bu isteğe bağlı argümanı atlayın.

Makalenin sonraki bölümlerinde, SPLIT işlevinin excel VBA'da pratik olarak nasıl kullanılacağını göreceğiz.

VBA Bölünmüş Dize İşlevi Örnekleri

Aşağıda, Excel VBA'daki Bölme İşlevinin pratik örnekleri verilmiştir.

Örnek 1 - Cümleyi Böl

Böl, 0'dan başlayacak olan dizide sonucu döndürür. Tüm diziler 1'den değil 0'dan başlar.

A1 hücresinde "Adım Excel VBA" sözcüğünüz olduğunu varsayın.

Şimdi bu cümleyi "Benim", "Adım", "eşittir", "Excel", "VBA" gibi parçalara ayırmak istiyorsunuz. Excel VBA SPLIT String fonksiyonunu kullanarak bu sonucu döndürebiliriz.

Adım 1: Makroyu adla başlatın.

Kod:

Sub Split_Example1 () End Sub Step 2: Üç değişken bildiriniz .

Kod:

Sub Split_Example1 () Dim MyText As String Dim i As Integer Dim MyResult () As String End Sub

Adım 3: Şimdi tanımlanan değişken için, Metnim “Benim Adım Excel VBA” kelimesini atar .

Kod:

Sub Split_Example1 () Dim MyText As String Dim i As Integer Dim MyResult () As String MyText = "Benim Adım Excel VBA" End Sub

Adım 4: Şimdi Sonuç değişkenim için VBA split string fonksiyonunu uygulayın.

Kod:

Sub Split_Example1 () Dim MyText As String Dim i As Integer Dim MyResult () As String MyText = "Benim Adım Excel VBA" MyResult = Split (End Sub

Adım 5: İfade bizim metin değerimizdir. Metin değerimizi zaten Metnim değişkenine atadığımız için bu argümanı buraya girin.

Kod:

Sub Split_Example1 () Dim MyText As String Dim i As Integer Dim MyResult () As String MyText = "Benim Adım Excel VBA" MyResult = Split (MyText) End Sub

Not: Şimdi olduğu gibi, diğer tüm parametreleri göz ardı edin.

Adım 6: Şimdi Sonucum bu bölünmüş sonucu tutuyor. Yazıda daha önce söylediğim gibi, split işlevi sonucu bir dizi olarak saklar, yani burada

  • Sonucum (0) = "Benim"
  • Sonucum (1) = "Ad"
  • Sonucum (2) = "eşittir"
  • Sonucum (3) = "Excel"
  • Sonucum (4) = "VBA"

Bu kod, SPLIT işlevini başlatmak için herhangi bir etki yaratmasa da, bu kodu kullanabiliriz.

Örnek 2 - UBOUND İşlevli VBA SPLIT Dizesi

SPLIT işlevinin sonucunu saklamak için, SPLIT işlevi ile birlikte vba UBOUND işlevini kullanabiliriz.

UBOUND, dizinin maksimum uzunluğunu döndürür. Yukarıdaki örnekte, dizinin maksimum uzunluğu 5'ti.

Aynı kelimeyi “Benim Adım Excel VBA” olarak alın. Bu kelimeyi bölelim ve A1 hücresinden itibaren saklayalım.

Adım 1: Önceki örnekte kaldığımız yerden devam edelim.

Adım 2: Şimdi VBA'da 0'dan dizinin maksimum uzunluğuna yani UBOUND'a kadar SONRAKİ DÖNGÜ İÇİN uygulayın.

Sıfırdan başlamamızın nedeni SPLIT sonucu 1'den değil sıfırdan depolayacaktır.

Adım 3: Şimdi VBA CELLS özelliğini uygulayın ve sonucu saklayın.

Kod:

Hücreler (i + 1, 1) .Değer = MyResult (i)

Adım 4: Bu kodu çalıştırın, bölünmüş değerlerimiz olur.

Tam Kod:

Sub Split_Example1 () Dim MyText As String Dim i As Integer Dim MyResult () As String MyText = "Benim Adım Excel VBA" MyResult = Split (MyText) i = 0 - UBound (MyResult) Hücreleri (i + 1, 1) .Value = MyResult (i) Next i End Sub

Dönüş Kelime Sayısı

We can also show the total number of words in the supplied value. Use the below code to show the total number of word counts. Code:

Sub Split_Example2() Dim MyText As String Dim i As Integer Dim MyResult() As String MyText = "My Name is Excel VBA" MyResult = Split(MyText) i = UBound(MyResult()) + 1 MsgBox "Total Words Count is " & i End Sub

Copy and paste the above VBA code and run it, the message box will return the result.

Things to Remember

  • If the delimiter is not supplied SPLIT automatically thinks the delimiter as space.
  • If you want to split except space then you need to specify the delimiter in double-quotes.
  • SPLIT stores the result as array results.
  • UBOUND function returns the maximum length of the array.

Recommended Articles

Bu, VBA Bölme İşlevi için bir kılavuz olmuştur. Burada, bazı pratik örnekler ve indirilebilir bir excel şablonu ile birlikte Excel'de VBA Split String Function'ı nasıl kullanacağımızı öğrendik. Aşağıda, VBA ile ilgili bazı yararlı excel makaleleri bulunmaktadır -

  • VBA'da RegEx Nasıl Etkinleştirilir?
  • Excel VBA'da StrComp İşlevi
  • VBA Çalışma Kitabı Nesnesi
  • Excel'de VBA Uyku İşlevi
  • Excel VBA'da bir Özet Tablo oluşturun
  • VBA'da Dönene Kadar Yapın
  • VBA'da Hücre Seçin
  • VBA'da Çalışma Sayfası İşlevi
  • Alt Simge Aralık Dışında

Ilginç makaleler...