我在不同的单元格中有多个字符串,例如
CO20: 20 YR CONVENTIONAL
FH30: 30 YR FHLMC
FHA31
我需要将子字符串从1提取到直到':'的索引,或者如果在结束之前不可用(在字符串3的情况下)。我需要帮助在VBA中写这个。
答案 0 :(得分:28)
更短的:
Split(stringval,":")(0)
答案 1 :(得分:11)
首先测试':',然后将测试字符串调到':'或结束,具体取决于是否找到它
Dim strResult As String
' Position of :
intPos = InStr(1, strTest, ":")
If intPos > 0 Then
' : found, so take up to :
strResult = Left(strTest, intPos - 1)
Else
' : not found, so take whole string
strResult = strTest
End If
答案 2 :(得分:5)
在这种情况下,你可以先找到字符串的位置“:”
'position = InStr(StringToSearch, StringToFind)
position = InStr(StringToSearch, ":")
然后使用Left(StringToCut,NumberOfCharacterToCut)
Result = Left(StringToSearch, position -1)