Bir dizedeki karakter sayısını veya bir değişkeni saklamak için gereken bayt sayısını içeren Long'u döndürür.
Söz dizimi
Len(dize* | *varadı)
Len işlevinin söz diziminde aşağıdaki bağımsız değişkenler bulunur:
| Bağımsız değişken | Açıklama |
|---|---|
| dize | Geçerli herhangi bir dize ifadesi. Dize Null içeriyorsa, Null döndürülür. |
| değişkenadı | Geçerli herhangi bir değişken adı. Eğer varname Null içeriyorsa, Null döndürülür. Varname bir Variant ise, Len bunu bir String olarak kabul eder ve her zaman içerdiği karakter sayısını döndürür. |
Açıklamalar
İki olası bağımsız değişkenden biri (ve yalnızca biri) belirtilmelidir. Kullanıcı tanımlı tipler ile Len dosyaya yazılacağı şekilde boyutu döndürür.
Not
Çift bayt karakter kümesi (DBCS) dillerinde olduğu gibi, bir dizede bulunan bayt verileri için LenB işlevini kullanın. UzunlukB bir dizedeki karakter sayısını vermek yerine, o dizeyi temsil etmek için kullanılan bayt sayısını verir. Kullanıcı tanımlı türlerde LenB , öğeler arasındaki doldurma dahil olmak üzere bellek içi boyutu döndürür. LenB kullanan örnek kod için, örnek konudaki ikinci örneğe bakın.
Not
Len , kullanıcı tanımlı veri türlerinde değişken uzunlukta dizelerle kullanıldığında gereken depolama baytlarının gerçek sayısını belirleyemeyebilir.
Sorgu örneği
| İfade | Sonuçlar |
|---|---|
| SELECT ProductID, Len(ProductID) AS ProductLen FROM ProductSales; | "ÜrünKimliği" alanındaki değerleri ve ÜrünLen sütunlarındaki bu değerlerin uzunluğunu döndürür. |
VBA örnekleri
Not
Aşağıdaki örneklerde, bu işlevin Visual Basic for Applications (VBA) modülünde kullanımı gösterilir. VBA ile çalışma hakkında daha fazla bilgi için, rama'nın yanındaki açılan listede Geliştirici Başvurusu'nu seçin ve arama kutusuna bir veya birden çok terim yazın.
İlk örnekte, bir dizedeki karakter sayısını veya bir değişkeni saklamak için gereken bayt sayısını döndürmek için Len kullanılır.
Türü... Bitiş Türü blok tanımlamasıCustomerRecord, bir sınıf modülünde görünüyorsa, Private anahtar sözcüğünden önce gelmelidir. Standart bir modülde, Type deyimi Public olabilir.
Type CustomerRecord ' Define user-defined type.
ID As Integer ' Place this definition in a
Name As String * 10 ' standard module.
Address As String * 30
End Type
Dim Customer As CustomerRecord ' Declare variables.
Dim MyInt As Integer, MyCur As Currency
Dim MyString, MyLen
MyString = "Hello World" ' Initialize variable.
MyLen = Len(MyInt) ' Returns 2.
MyLen = Len(Customer) ' Returns 42.
MyLen = Len(MyString) ' Returns 11.
MyLen = Len(MyCur) ' Returns 8.
İkinci örnekte, dizeyi temsil etmek için ANSI kullanılmışsa, dizedeki bayt karakterlerinin sayısını döndürmek için LenB ve kullanıcı tanımlı bir işlev (LenMbcs) kullanılır.
Function LenMbcs (ByVal str as String)
LenMbcs = LenB(StrConv(str, vbFromUnicode))
End Function
Dim MyString, MyLen
MyString = "ABc"
' Where "A" and "B" are DBCS and "c" is SBCS.
MyLen = Len(MyString)
' Returns 3 - 3 characters in the string.
MyLen = LenB(MyString)
' Returns 6 - 6 bytes used for Unicode.
MyLen = LenMbcs(MyString)
' Returns 5 - 5 bytes used for ANSI.