Bu öğretici, bir dizenin uzunluğunu elde etmek için Len VBA işlevinin nasıl kullanılacağını gösterecektir.
Genişlik İşlevi
VBA Len işlevi, belirtilen bir dizenin uzunluğunu döndürür.
VBA Len Sayısı Karakterleri
VBA Len işlevi, bir dizedeki karakterleri sayar.
1234567891011121314151617 | Alt LenExample_1()MsgBox Len("12345") 'Sonuç: 5MsgBox Len("12") 'Sonuç: 2MsgBox Len("1") 'Sonuç: 1MsgBox Len(" ") 'Sonuç: 1'Orada bir boşluk karakteri var.MsgBox Len("") 'Sonuç: 0MsgBox Len("AB Cd") 'Sonuç: 5Alt Bitiş |
VBA Len Dizeleri veya Varyantları
VBA Len İşlevi, dizeler veya türevler olarak bildirilen değişkenlerdeki karakter sayısını sayabilir. Aslında, VBA Len bir değişkeni bir dize olarak ele alacaktır. VBA Len bir tamsayı, uzun, tek veya çift ile kullanılıyorsa, VBA Len, değişkeni depolamak için gereken bayt sayısını sayacaktır.
123456789101112131415161718192021222324252627282930313233 | Alt LenExample_2()VarEx1'i Dize Olarak KarartınVarEx1 = 12345MsgBox Len(VarEx1) 'Sonuç: 5'Len değişkendeki karakter sayısını sayıyorVarEx2 Varyant Olarak DimVarEx2 = 12345MsgBox Len(VarEx2) 'Sonuç: 5'Len değişkendeki karakter sayısını sayıyorVarEx3 Tamsayı Olarak DimVarEx3 = 12345MsgBox Len(VarEx3) 'Sonuç: 2'Len, değişkeni depolamak için kullanılan bayt sayısını sayıyorVarEx4 Kadar DimVarEx4 = 12345MsgBox Len(VarEx4) 'Sonuç: 2'Len, değişkeni depolamak için kullanılan bayt sayısını sayıyorDim VarEx5 TekliVarEx5 = 12345MsgBox Len(VarEx5) 'Sonuç: 2'Len, değişkeni depolamak için kullanılan bayt sayısını sayıyorDim VarEx6 Çift OlarakVarEx6 = 12345MsgBox Len(VarEx6) 'Sonuç: 2'Len, değişkeni depolamak için kullanılan bayt sayısını sayıyorAlt Bitiş |
Bir Karakterin VBA Len Sayısı
VBA Len işlevi, bir dizede bir karakterin kaç kez bulunduğunu saymak için VBA Değiştir işleviyle birlikte kullanılabilir.
VBA Değiştirme İşlevi, bir metindeki bir alt dizeyi başka bir alt dizeyle değiştirebilir:
1 | MsgBox Replace("XBCX", "X", "7") 'Sonuç: "7BC7" |
“” ile saymak istediğimiz karakterleri kaldırmak için Değiştir'i kullanabilir ve ardından değiştirmeden önceki ve sonraki uzunluk farkını bulabiliriz.
1234567891011121314 | Alt LenExample_3()Dim StrEx As String 'Bir dize değişkeni tanımlayınStrEx = "Jack,John,Jim,Ürdün"MsgBox Len(StrEx) - Len(Replace(StrEx, ",", "")) 'Sonuç: 3'Yukarıdaki kodu yıkmakMsgBox Len(StrEx) 'Sonuç: 20MsgBox Replace(StrEx, ",", "") 'Sonuç: "JackJohnJimJordan"MsgBox Len(Replace(StrEx, ",", "")) 'Sonuç: 17MsgBox Len(StrEx) - Len(Değiştir(StrEx, ",", "")) 'Sonuç: 20-17=3Alt Bitiş |
Bir Alt Dizinin VBA Len Sayısı Oluşumları
VBA Len işlevi, bir dizede bir alt dizenin kaç kez bulunduğunu saymak için VBA Değiştir işleviyle birlikte kullanılabilir.
VBA Değiştirme İşlevi, bir metindeki bir alt dizeyi başka bir alt dizeyle değiştirebilir:
1 | MsgBox Replace("XB cX", "X", "7") 'Sonuç: "7B c7" |
"" ile saymak istediğimiz alt dizileri kaldırmak için Değiştir'i kullanabilir ve ardından değiştirmeden önceki ve sonraki uzunluk farkını bulabiliriz. Son olarak, farkı, değiştirdiğimiz alt dizenin uzunluğuna bölmemiz gerekiyor.
12345678910111213141516171819 | Alt LenExample_4()Dim StrEx As String 'Bir dize değişkeni tanımlayınStrEx = "Jack, John, Jim, Jordan"Dim SubStr As String 'Bir alt dize değişkeni tanımlayınAltStr = ", "'SubStr'nin StrEx içinde kaç kez bulunduğunu bulacağızMsgBox (Len(StrEx) - Len(Replace(StrEx, SubStr, ""))) / Len(SubStr) 'Sonuç: 3'Yukarıdaki kodu yıkmakMsgBox Len(StrEx) 'Sonuç: 23MsgBox Replace(StrEx, SubStr, "") 'Sonuç: "JackJohnJimJordan"MsgBox Len(Replace(StrEx, SubStr, "")) 'Sonuç: 17MsgBox Len(StrEx) - Len(Replace(StrEx, SubStr, "")) 'Sonuç: 23-17=6MsgBox (Len(StrEx) - Len(Değiştir(StrEx, SubStr, ""))) / Len(SubStr)'Sonuç: (23-17)/2=3Alt Bitiş |