Option
Explicit
Public
Sub
test()
Const
SEARCH_STRING1
As
String
=
"| PUN-6X1-BL | Art Nr.: 159664 | VPE= 1m | Preis= 1,20€"
Const
SEARCH_STRING2
As
String
=
"*VPE*"
Const
SEARCH_STRING3
As
String
=
"*Preis*"
Const
SEARCH_CHARS1
As
String
=
"= "
Const
SEARCH_CHARS2
As
String
=
"m"
Const
SEARCH_CHARS3
As
String
=
"€"
Dim
astrArray()
As
String
Dim
ialngIndex
As
Long
, alngPos(1
To
4)
As
Long
Dim
strText
As
String
, strSearch1
As
String
, strSearch2
As
String
strSearch1 = Mid$(
String
:=SEARCH_STRING2, Start:=2, Length:=Len(SEARCH_STRING2) - 2)
strSearch2 = Mid$(
String
:=SEARCH_STRING3, Start:=2, Length:=Len(SEARCH_STRING3) - 2)
astrArray = Split(Expression:=SEARCH_STRING1, Delimiter:=
"|"
)
For
ialngIndex = 0
To
UBound(astrArray)
If
astrArray(ialngIndex)
Like
SEARCH_STRING2
Or
astrArray(ialngIndex)
Like
SEARCH_STRING3
Then
alngPos(1) = InStr(1, astrArray(ialngIndex), SEARCH_CHARS1)
alngPos(2) = InStr(1, astrArray(ialngIndex), SEARCH_CHARS2)
alngPos(3) = InStr(1, astrArray(ialngIndex), SEARCH_CHARS3)
alngPos(4) = IIf(Right$(
String
:=astrArray(ialngIndex), Length:=1) =
" "
, 2, 1)
strText = strText & IIf(astrArray(ialngIndex)
Like
SEARCH_STRING2, strSearch1, strSearch2) &
" : "
& _
Mid$(
String
:=astrArray(ialngIndex), _
Start:=alngPos(1) + 2, Length:=Len(astrArray(ialngIndex)) - alngPos(1) - 1 - alngPos(4)) & vbCr
End
If
Next
Call
MsgBox(strText, vbExclamation)
End
Sub