Mid是Visual Basic和Microsoft Excel中的一个字符串函数。主要功能是从一个文本字符串的指定位置开始,截取指定数目的字符。
mid函数_MID函数 -语法
VB中
Mid(String As Variant, Start As Long, [Length As Variant]) As Variant
Mid$(String As String, Start As Long, [Length As Variant]) As String
Excel中
MID(text, start_num, num_chars)
说明
这个函数的3个参数各在VB和Excel中互相等价,但VB中的Length参数可以省略,而Excel中num_chars参数不可省略。
mid函数_MID函数 -参数
text
MID函数字符串表达式,从中返回字符。如果text包含Null,则返回Null。
start_num
text 中被提取的字符部分的开始位置。如果 start 超过了 text 中字符的数目,Mid 将返回零长度
字符串 ("")。
num_chars
要返回的字符数。如果省略或num_chars 超过或等于文本的字符数(包括 start 处的字符),将返回字符串中从 start_num到字符串结束的所有字符。
说明
要判断 text 中字符的数目,可使用 Len 函数。
下面的示例利用 Mid 函数返回字符串中从第四个字符开始的六个字符:
Dim MyVar
MyVar = Mid("VB脚本is fun!", 4, 6) 'MyVar 包含 "Script"。
注意 MidB 函数与包含在字符串中的字节数据一起使用。其参数不是指定字符数,而是字节数。
例:
M=4100
A1=Mid(M,1,1) A1=4
A2=Mid(M,2,2) A2=10
参数列表
Mid函数参数VB参数Excel参数描述String
text
必选。变体(字符串)表达式,要被截取的字符。如果该参数为Null,则函数返回Null。
Start
start_num
必选。数值表达式,从左起第几位开始截取。
Length
num_chars
VB中可选,Excel中必选。变体(数值)表达式,从Start参数指定的位置开始,要向右截取的长度。如果省略,将指定为从Start参数位置开始向右到字符串结尾的所有字符数。
说明
当Start(start_num)参数小于1时,函数返回一个错误;当Strat参数值大于String(text)参数长度时,返回一空字符串;若从Start参数起截取长度超出字符串末尾,或Length参数被省略,则返回Start参数位置到字符串结尾的所有字符。
VB中的Mid和Mid$两种写法在用法上没有区别。
要得到字符串的长度,可以使用Len函数。
VB和Excel中都有MidB函数,与Mid不同,它是以字节为单位进行字符串截取的,同时,可以用LenB函数得到字符串的字节数。
mid函数_MID函数 -示例
VB中
下面的示例展示了VB中如何使用Mid函数。其中所有的“Mid”都可以用“Mid$”代替。
1
2
3
4
5
6
7
Dim v As String
v = Mid("Visual Basic", 0, 12) '提示实时错误5
v = Mid("Visual Basic", 1, 6) 'v的值为"Visual"
v = Mid("Visual Basic", 1, 20) 'v的值为"Visual Basic"
v = Mid("Visual Basic", 8) 'v的值为"Basic"
v = Mid("Visual Basic", 15) 'v的值为空字符串
v = Mid("中文VB", 2, 2) 'v的值为"文V"
Excel中
假设下面是一部分Excel工作簿。
A
1
String数据
公式
结果
=MID(A1,1,7)
“String数”
=MID(A1,3,10)
“ring数据”
=MID(A1,10,5)
(空)