VBA 提取单元格A1中的两指定字符之间的字符输出到TEXTBOX中

例:单元格A1 = War_ID : SM3766R12-CA88770.9-23
怎样用VBA提取“:”号第一个“-”号之间的字符,“:”和第一个“-”之间的字符数量会变化?在TEXTBOX1中显示;怎样用VBA提取“-”号与“-”号之间的字符,“-”和“-”之间的字符数量会变化?在TEXTBOX2中显示;怎样用VBA提取第二“-”号之后的字符,“-”之后的字符数量会变化?在TEXTBOX3中显示。请高手帮忙,万分感谢。

请使用split函数,它返回一个下标从零开始的一维数组,它包含指定数目的子字符串。
例如split("War_ID : SM3766R12-CA88770.9-23"," : ")(0)返回的就是"War_ID ",在对其进行split("War_ID ","_")(1)返回的就是ID的值。split的详细使用你可以查查 VBA split函数。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-12-23
Private Sub CommandButton1_Click()
Dim s As String
s = [A1]
Me.TextBox1.Value = Mid(s, InStr(1, s, ":") + 1, InStr(InStr(1, s, ":") + 1, s, "-") - InStr(1, s, ":") - 1)
Me.TextBox2.Value = Mid(s, InStr(1, s, "-") + 1, InStr(InStr(1, s, "-") + 1, s, "-") - InStr(1, s, "-") - 1)
Me.TextBox3.Value = Right(s, Len(s) - InStr(InStr(1, s, "-") + 1, s, "-"))
End Sub本回答被提问者采纳
相似回答