Option
Explicit
Public
Enum
RepairEnum
RepairNone = 0
RepairA = 1
RepairB = 2
RepairF = 4
RepairG = 8
RepairAB = RepairA
Or
RepairB
RepairAF = RepairA
Or
RepairF
RepairBF = RepairB
Or
RepairF
RepairAG = RepairA
Or
RepairG
RepairBG = RepairB
Or
RepairG
RepairABF = RepairA
Or
RepairB
Or
RepairF
RepairABG = RepairA
Or
RepairB
Or
RepairG
RepairBFG = RepairB
Or
RepairF
Or
RepairG
RepairAFG = RepairA
Or
RepairF
Or
RepairG
RepairABFG = RepairA
Or
RepairB
Or
RepairF
Or
RepairG
End
Enum
Public
Sub
Levelausgabe()
Dim
enmRepair
As
RepairEnum
enmRepair = RepairNone
With
Worksheets(
"Tabelle1"
)
If
Range(
"E3"
).Value = 1
Then
enmRepair = enmRepair
Or
RepairA
If
Range(
"E8"
).Value = 1
Then
enmRepair = enmRepair
Or
RepairB
If
Range(
"E13"
).Value = 1
Then
enmRepair = enmRepair
Or
RepairF
If
Range(
"E18"
).Value = 1
Then
enmRepair = enmRepair
Or
RepairG
End
With
Select
Case
enmRepair
Case
RepairA, RepairB, RepairF, RepairG, RepairAB
Call
MsgBox(
"Level 1"
, vbInformation, RepairEnum2String(enmRepair))
Case
RepairAF, RepairBF, RepairAG, RepairBG
Call
MsgBox(
"Level 2"
, vbInformation, RepairEnum2String(enmRepair))
Case
RepairABF, RepairABG, RepairBFG, RepairAFG, RepairABFG
Call
MsgBox(
"Level 3"
, vbInformation, RepairEnum2String(enmRepair))
Case
RepairNone
Call
MsgBox(
"Keine Reparatur"
, vbExclamation)
Case
Else
Call
MsgBox(
"Level ?"
, vbExclamation,
"Unbekannt"
)
End
Select
End
Sub
Public
Function
RepairEnum2String(Repair
As
RepairEnum)
As
Variant
Select
Case
Repair
Case
RepairA: RepairEnum2String =
"RepairA"
Case
RepairB: RepairEnum2String =
"RepairB"
Case
RepairF: RepairEnum2String =
"RepairF"
Case
RepairG: RepairEnum2String =
"RepairG"
Case
RepairAB: RepairEnum2String =
"RepairAB"
Case
RepairAF: RepairEnum2String =
"RepairAF"
Case
RepairBF: RepairEnum2String =
"RepairBF"
Case
RepairAG: RepairEnum2String =
"RepairAG"
Case
RepairBG: RepairEnum2String =
"RepairBG"
Case
RepairABF: RepairEnum2String =
"RepairABF"
Case
RepairABG: RepairEnum2String =
"RepairABG"
Case
RepairBFG: RepairEnum2String =
"RepairBFG"
Case
RepairAFG: RepairEnum2String =
"RepairAFG"
Case
RepairABFG: RepairEnum2String =
"RepairABFG"
Case
Else
: RepairEnum2String = Empty
End
Select
End
Function