Hallo Leute,
ich bin noch VBA Anfänger und habe gerade ein mir unerklärliches Phänomän vor mir :-)
Ich habe versucht den selben Code einmal mit der Methode select case und einmal mit einer if then else Anweisung zu schreiben.
Jedoch bekomme ich unterschiedliche Ergebnisse.
Hier die select case Lösung:
If (strFrom <= strTime) And (strTime < strTo) Then
Select Case Status
Case "eingeschränkt verfügbar", "Leerlauf"
dblMin = Cells(Row, ColumnStatus + 5)
dblMax = Cells(Row, ColumnStatus + 6)
Case "nicht bereit"
dblMin = 0
dblMax = 0
Case "in planung"
dblMin = 1
dblMax = 1
End Select
End if
Und hier die Lösung mit If then else
If (strFrom <= strTime) And (strTime < strTo) And Status = "eingeschränkt verfügbar" Then
dblMin = Cells(Row, ColumnStatus + 5)
dblMax = Cells(Row, ColumnStatus + 6)
ElseIf (strFrom <= strTime) And (strTime < strTo) And Status = "Leerlauf" Then
dblMin = Cells(Row, ColumnStatus + 5)
dblMax = Cells(Row, ColumnStatus + 6)
ElseIf (strFrom <= strTime) And (strTime < strTo) And Status = "nicht bereit" Then
dblMin = 0
dblMax = 0
ElseIf (strFrom <= strTime) And (strTime < strTo) And Status = "in planung" Then
dblMin = 1
dblMax = 1
End if
Der Code it der Select Case Lösung liefert das richtige Ergebniss.
Habe ich da irgendetwas falsch gemacht?
LG Frank
|