PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Case


Whiskey
16.03.2002, 13:49
Hallo,
wie kann ich mit
Select Case bewirken, dass er mehr als nur die ersten beiden Case abarbeitet?

Bei diesen Code:

Private Sub text1_Change()
Select Case text1
Case "1"
zahl2 = 0.25
Case "1.01" To "9.99"
zahl2 = 0.4
Case "10" To "24.99"
zahl2 = 0.6
Case "25" To "99.99"
zahl2 = 1.2
Case Is > "100"
zahl2 = 2.4
End Select
zahl1 = text1
zahl3 = zahl1 + zahl2
text2 = zahl2
zahl4 = zahl3
End Sub

Nimmt er für alle höheren Werte als 10 für die zahl2 den Wert 0,4 und nicht 0,6 wie angegeben wurde.

Wie könnte ich das gegebenenfalls mit If verschachteln?
(Benutze VB6)

Kann mir jemand helfen?
Ty and Greetz
Whiskey


netzbazille
17.03.2002, 19:38
Es funktioniert, wenn du den String aus Text1 in einen z.B. Single-Wert umwandelst.

Select Case CSng(Text1)
Case 1
zahl2 = 0.25
Case 1.01 To 9.99
zahl2 = 0.4
Case 10 To 24.99
zahl2 = 0.6
Case 25 To 99.99
zahl2 = 1.2
Case Is > 100
zahl2 = 2.4
End Select

Allerdings mußt du dann natürlich auch sicherstellen, dass auch wirklich eine gültige Zahl eingegeben wird.

Gruß

Whiskey
17.03.2002, 22:52
Danke hat super funktioniert!!!
:D

Mimo
19.03.2002, 11:16
Das leidige Thema beim Vergleichen von Strings, dass "10" kleiner als "9" ist! ;)

Mimo