Mid 函數
傳回 Variant (String),包含字串的指定字元數。
語法
Mid(string, start, [ length ])
Mid 函數語法具有下列具名引數:
部分 | 描述 |
---|---|
string | 必要。 字串運算式的功能是會從中傳回字元。 如果字串包含 Null,則傳回 Null。 |
start | 必要;Long。 string 中要擷取做為開始部分的字元位置。 如果 start 中的字元數大於 string,則 Mid 會傳回零長度字串 ("")。 |
length | 選用;Variant (Long)。 要傳回的字元數。 如果省略此參數,或是字元數少於文字中的 length 字元 (包含 start 所在的字元),就會傳回從 start 位置開始一直到字串結尾的所有字元。 |
註解
若要判定字串中的字元數,請使用 Len 函數。
注意事項
使用 MidB 字串函數處理包含在字串中的位元組資料,如同雙位元組字元集語言中的處理方式。 length 會指定位元組數,而非指定要傳回的字元數。 針對使用程式碼範例的 MidB,請參閱範例主題中的第二個範例。
範例
第一個範例使用 Left 函數,從字串傳回指定的字元數。
Dim MyString, FirstWord, LastWord, MidWords
MyString = "Mid Function Demo" ' Create text string.
FirstWord = Mid(MyString, 1, 3) ' Returns "Mid".
LastWord = Mid(MyString, 14, 4) ' Returns "Demo".
MidWords = Mid(MyString, 5) ' Returns "Function Demo".
第二個範例使用 MidB 和使用者定義的函數 (MidMbcs),也會從字串傳回字元。 差異在於輸入的字串為 ANSI,而長度則是以位元組為單位。
Function MidMbcs(ByVal str as String, start, length)
MidMbcs = StrConv(MidB(StrConv(str, vbFromUnicode), start, length), vbUnicode)
End Function
Dim MyString
MyString = "AbCdEfG"
' Where "A", "C", "E", and "G" are DBCS and "b", "d",
' and "f" are SBCS.
MyNewString = Mid(MyString, 3, 4)
' Returns "CdEf"
MyNewString = MidB(MyString, 3, 4)
' Returns "bC"
MyNewString = MidMbcs(MyString, 3, 4)
' Returns "bCd"
另請參閱
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。