Sub
Test()
Dim
Rng
As
Range
Set
Rng = FindItemCell(
"Auto"
,
"Reifen"
,
"gebraucht"
)
If
Not
Rng
Is
Nothing
Then
Debug.Print Rng.Row
Rng.
Select
Else
MsgBox
"Nicht vorhanden"
End
If
End
Sub
Function
FindItemCell(strTyp
As
String
, strElement
As
String
, strZustand
As
String
)
As
Range
Dim
rngDB
As
Range
Dim
rngNames
As
Range, rngTyp
As
Range, rngElement
As
Range, rngZustand
As
Range, Rng
As
Range
Set
rngDB = ThisWorkbook.Worksheets(
"Daten"
).Range(
"A1:I10"
)
Set
rngNames = Intersect(rngDB.Rows(1), rngDB.Worksheet.UsedRange)
For
Each
Rng
In
rngNames
If
Rng.Value =
"Typ"
Then
Set
rngTyp = Intersect(Rng.EntireColumn, rngDB)
ElseIf
Rng.Value =
"Element"
Then
Set
rngElement = Intersect(Rng.EntireColumn, rngDB)
ElseIf
Rng.Value =
"Zustand"
Then
Set
rngZustand = Intersect(Rng.EntireColumn, rngDB)
End
If
Next
For
Each
Rng
In
rngDB.Rows
If
Intersect(Rng, rngTyp).Value = strTyp _
And
Intersect(Rng, rngElement).Value = strElement _
And
Intersect(Rng, rngZustand).Value = strZustand
Then
Set
FindItemCell = Rng
Exit
For
End
If
Next
End
Function