If then else code in einen select case vba code verwandeln

Sunny0803

Herzlich willkommen!
Hallo zusammen,

ich soll lt. Aufgabenstellung den folgenden if then else code in einen select case vba code verwandeln.

if autoklasse = kleinwagen
then steuer = 150
if autoklasse = mitteklasse
then steuer = 100
if autoklasse = oberklasse
then steuer = 50
else steuer = 250
end if

Meine Lösung:
Select Case Steuer
Case is „kleinwagen“ Steuer = 150
Case is „mittelklasse“ Steuer = 100
Case is „Oberklasse“ Steuer = 50
Case else Steuer = 250
End select

Stimmt den meine Lösung? Kann mir hier jem. weiterhelfen?
Das wäre super!

LG Sunny
 
Schon die Aufgabenstellung dürfte nicht funktionieren.
Beispiel:
if autoklasse = kleinwagen
=> in dem Fall wird die Variable autoklasse mit der Variablen kleinwagen abgeglichen, wenn ich es richtig verstehe, soll aber mit dem String "kleinwagen" abgeglichen werden.

Zu deiner Lösung:
Das funktioniert nicht. Zu sehr möchte ich nicht ins Detail gehen (schliesslich sollst du ja mit der Lösung der Aufgabe den Befehl besser verstehen), aber ein paar Tipps gebe ich gerne:
* Schau dir die Variable, die du prüfst nochmal genau an.
* Bei VBA ist eine sehr brauchbare Hilfe für die einfacheren Befehle dabei. Sieh dir Case darin nochmal an.
 
Hallo zusammen,

ich soll lt. Aufgabenstellung den folgenden if then else code in einen select case vba code verwandeln.

if autoklasse = kleinwagen
then steuer = 150
if autoklasse = mitteklasse
then steuer = 100
if autoklasse = oberklasse
then steuer = 50
else steuer = 250
end if
LG Sunny

Ich hab eben mal ein bisschen rumgespielt. So funktioniert es bei mir:

Sub ddd()
Dim Zahl
Dim Steuer

Autoklasse = ActiveCell.Value 'Autoklasse in der Aktiven Zelle holen

Select Case Autoklasse
Case "kleinwagen" 'Wenn Autoklasse = "kleinwagen" then Steuer = 150
Steuer = 150
MsgBox ("Die Steuer für " & Autoklasse & " beträgt " & Steuer & " Euro")
Case "mittelklasse"
Steuer = 100
MsgBox ("Die Steuer für " & Autoklasse & " beträgt " & Steuer & " Euro")
Case "oberklasse"
Steuer = 200
MsgBox ("Die Steuer für " & Autoklasse & " beträgt " & Steuer & " Euro")
Case Else 'Wenn Autoklasse anders als oben dann "Fehler"
MsgBox ("Fehler")
End Select
End Sub


Hoffe das meinst Du.
 
Zuletzt bearbeitet:
Oben