共用方式為


Len 函數

回傳包含字串字元數或儲存變數所需的位元組數的 Long

語法

Len (string | varname)

Len 函數語法包含以下部分:

部分 描述
string 任何有效的 字串表達式。 如果字串包含 Null,則傳回 Null
varname 任何有效的 變數 名稱。 若 varname 包含 Null,則回傳 Null 。 若 varname變體Len 將其視為字 ,且總是回傳其包含的字元數。

註解

必須指定兩個可能 的論元 中一個 (且僅有一個) 。 使用 使用者定義型別時, Len 會回傳將寫入檔案的大小。

注意事項

使用 LenB 函式,並使用包含字串中的位元組資料,如 DBCS) 語言 (雙位元組字元集。 LenB 不會回傳字串中的字元數,而是回傳用來表示該字串的位元組數。 使用使用者定義型別時, LenB 會回傳記憶體大小,包括元素間的任何填充。 關於使用 LenB 的範例程式碼,請參考範例主題中的第二個範例。

注意事項

Len 可能無法確定在使用者定義 資料型別中,使用變長字串時所需的實際儲存位元組數。

範例

第一個範例使用 Len 來回傳字串中的字元數或儲存變數所需的位元組數。 那 種......如果 End Type 區塊 CustomerRecord 在類別模組中出現,定義前必須加上關鍵字 Private 。 在標準模組中, 型態 陳述式可以是 Public

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.

第二個範例使用 LenB 與使用者自訂函式 LenMbcs () 若使用 ANSI 表示字串,則回傳字串中的位元組字元數。

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.

另請參閱

支援和意見反應

有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應