7,765
社区成员
发帖
与我相关
我的任务
分享
For i = 1 To Len(mStr) '先取X
If StrComp(Mid(mStr, i, 1), X, vbTextCompare) = 0 Then
startX = i
End If
If s = EofNum Then Exit For
Next i
Dim strC As String
strC = UCase("y26X475Z1.1")
MsgBox "X=" & Val(Mid(strC, InStr(strC, "X") + 1)) & "; Y=" & Val(Mid(strC, InStr(strC, "Y") + 1)) & "; Z=" & Val(Mid(strC, InStr(strC, "Z") + 1))
Sub test()
Dim i As Integer, x(2) As String, k As Integer
Dim w2 As String, w1 As String
w1 = "X475Z1.1y26"
For i = 1 To Len(w1)
w2 = LCase$(Mid$(w1, i, 1))
Select Case w2
Case "x": k = 0
Case "y": k = 1
Case "z": k = 2
Case Else
x(k) = x(k) + w2
End Select
Next
Debug.Print "x=" & x(0) & "; y=" & x(1) & "; z=" & x(2)
End Sub
Sub test()
Dim w1 As String, iX As Integer, iY As Integer, iZ As Integer
w1 = "X475Z1.1y26"
iY = InStr(1, w1, "y", vbTextCompare)
iZ = InStr(1, w1, "z", vbTextCompare)
Debug.Print "x=" & Mid$(w1, 2, iZ - 2)
Debug.Print "y=" & Right$(w1, Len(w1) - iY)
Debug.Print "z=" & Mid$(w1, iZ + 1, iY - iZ - 1)
End Sub