Sub
SUCHE()
Dim
Suchnummer, Ablaufdatum1, Ablaufdatum2, Land, Suchstring2, Suchstring3, Suchstring4, ZellenInhalt, LegalState
As
String
Dim
Bereich, Gefunden1, Gefunden2, Suchbereich
As
Range
Dim
Zeile, Spalte, TextPos1, TextPos2, TextPos3, Länge, Länge2, Länge3
As
Integer
Dim
k
As
Integer
Suchstring3 =
"Actual or expected expiration date="
Suchstring4 =
"Legal state="
For
k = 2
To
3
Suchnummer = Sheets(
"Report"
).Cells(k, 7).Value
Land = Sheets(
"Report"
).Cells(k, 2).Value
Suchstring2 =
"LEGAL DETAILS FOR "
& Land
If
Sheets(
"Report"
).Cells(k, 7).Value <>
""
Then
Set
Gefunden1 = Sheets(
"Orbit"
).Cells.Find(What:=Suchnummer, After:=Cells(1, 1), LookIn:=xlValues, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=
False
, SearchFormat:=
False
)
If
Gefunden1
Is
Nothing
Then
GoTo
Überspringen
Zeile = Gefunden1.Row
With
Sheets(
"Orbit"
)
Set
Gefunden2 = .Range(.Cells(Zeile, 1), .Cells(Zeile, 34)).Find(What:=Suchstring2, LookIn:=xlValues, _
LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=
False
, SearchFormat:=
False
)
End
With
If
Gefunden2
Is
Nothing
Then
GoTo
Überspringen
Spalte = Gefunden2.Column
ZellenInhalt = Sheets(
"Orbit"
).Cells(Zeile, Spalte).Value
TextPos1 = InStr(ZellenInhalt, Suchstring2)
Länge = Len(ZellenInhalt)
Ablaufdatum1 = Right(ZellenInhalt, (Länge - TextPos1))
TextPos2 = InStr(Ablaufdatum1, Suchstring3) + 34
Länge2 = Len(Ablaufdatum1)
Ablaufdatum2 = Right(Ablaufdatum1, (Länge2 - TextPos2))
TextPos3 = InStr(Ablaufdatum2, Suchstring4) + 11
Länge3 = Len(Ablaufdatum2)
LegalState = Right(Ablaufdatum2, Länge3 - TextPos3)
LegalState = Left(LegalState, 5)
Ablaufdatum2 = Left(Ablaufdatum2, 10)
Sheets(
"Report"
).Cells(k, 19).Value = Ablaufdatum2
Sheets(
"Report"
).Cells(k, 20).Value = LegalState
Überspringen:
End
If
Next
End
Sub