EXCEL VBA自定义函数分离字符串代码

Function MyGet(Srg As String, Optional n As Integer = False)

Dim i As Integer
Dim s, MyString As String
Dim Bol As Boolean

For i = 1 To Len(Srg)
s = Mid(Srg, i, 1)
If n = 1 Then
Bol = Asc(s) < 0
ElseIf n = 2 Then
Bol = s Like "[a-z,A-Z]"
ElseIf n = 0 Then
Bol = s Like "#"
End If
If Bol Then MyString = MyString & s
Next

MyGet = IIf(n = 1 Or n = 2, MyString, Val(MyString))

End Function '从第一个字符开始,提取数字、字母、汉字。如果想要文本型数字,可以不加val。或者直接myget=mystring




Function MyGet(Srg As String, Optional n As Integer = False, Optional start_num As Integer = 1)

Dim i As Integer
Dim s, MyString As String
Dim Bol As Boolean

For i = start_num To Len(Srg)
s = Mid(Srg, i, 1)
If n = 1 Then
Bol = Asc(s) < 0
ElseIf n = 2 Then
Bol = s Like "[a-z,A-Z]"
ElseIf n = 0 Then
Bol = s Like "#"
End If
If Bol Then MyString = MyString & s
Next

MyGet = IIf(n = 1 Or n = 2, MyString, Val(MyString))

End Function '第三个参数是指定开始提取的字符数。

相关文档
最新文档