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:
492
Rating: Antwort:
 Nein
Thema:
Levelausgabe

Das ginge z.B. so:

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