Thema Datum  Von Nutzer Rating
Antwort
28.01.2021 14:15:26 Lisa
Solved
Blau Levelausgabe
28.01.2021 16:16:47 Gast22328
*****
Solved
28.01.2021 16:20:23 Gast22328
*****
Solved
28.01.2021 17:02:35 Gast22328
Solved
28.01.2021 17:05:34 Gast59695
*****
Solved
29.01.2021 08:23:06 Lisa
NotSolved

Ansicht des Beitrags:
Von:
Gast22328
Datum:
28.01.2021 16:16:47
Views:
705
Rating: Antwort:
 Nein
Thema:
Levelausgabe

Das ginge z.B. so:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
Option Explicit
 
Public Enum RepairEnum
   
  RepairNone = 0
   
'Level 1
  RepairA = 1 '2^0
  RepairB = 2 '2^1
  RepairF = 4 '2^2
  RepairG = 8 '2^3
   
  RepairAB = RepairA Or RepairB
   
'Level 2
  RepairAF = RepairA Or RepairF
  RepairBF = RepairB Or RepairF
  RepairAG = RepairA Or RepairG
  RepairBG = RepairB Or RepairG
   
'Level 3
  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

 

Grüße


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
28.01.2021 14:15:26 Lisa
Solved
Blau Levelausgabe
28.01.2021 16:16:47 Gast22328
*****
Solved
28.01.2021 16:20:23 Gast22328
*****
Solved
28.01.2021 17:02:35 Gast22328
Solved
28.01.2021 17:05:34 Gast59695
*****
Solved
29.01.2021 08:23:06 Lisa
NotSolved