Ответ 1
Короче:
Split(stringval,":")(0)
У меня есть несколько строк в разных ячейках, например
CO20: 20 YR CONVENTIONAL
FH30: 30 YR FHLMC
FHA31
Мне нужно получить подстроку от 1 до индекса ':' или если это не доступно до конца (в случае строки 3). Мне нужна помощь в написании этого в VBA.
Короче:
Split(stringval,":")(0)
Сначала проверьте значение ":", затем возьмите тестовую строку до ":" или "конец", в зависимости от того, найден ли она
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
Вы можете сначала найти позицию строки в этом случае: "
'position = InStr(StringToSearch, StringToFind)
position = InStr(StringToSearch, ":")
Затем используйте Left (StringToCut, NumberOfCharacterToCut)
Result = Left(StringToSearch, position -1)