ich habe ein ziemlich langes if-statement
[autoit]If $bcheck = ">> vvss" Or $bcheck = ">> vv00" Or $bcheck = ">> vv01" Or $bcheck = ">> vv02" Or $bcheck = ">> vv03" [...] Then
[/autoit]
das geht bis vv128.
Wie kann ich das kürtzen?
Thx schonmal
ich habe ein ziemlich langes if-statement
[autoit]If $bcheck = ">> vvss" Or $bcheck = ">> vv00" Or $bcheck = ">> vv01" Or $bcheck = ">> vv02" Or $bcheck = ">> vv03" [...] Then
[/autoit]
das geht bis vv128.
Wie kann ich das kürtzen?
Thx schonmal
For-Schleife :).
peethebee
ich check das grad net wie ich das umschreiben muss, das beispiel aus der hilfe hilft mir auch nicht weiter
Könntest mir da mal bitte weiterhelfen?
Hi!
Sind wir mal nicht so :D.
[autoit]Dim $result = false;
If $bcheck = ">> vvss" Then $result = true;
For $i = 0 to 128
If $bcheck = ">> vv" & $i Then $result = true;
Next
So in der Art, du hast das Ergebnis der Auswertung dann in $result, kannst also folgendes machen:
[autoit]If $result Then
; bisheriger Code in der If-Klausel
EndIf
Eventuell musst du $i noch mit StringFormat als 2- oder 3-stellige Zahl umwandeln lassen :).
Viel Erfolg,
peethebee
Wenn gefunden, kann die Schleife abgebrochen werden
[autoit]Dim $result = false;
If $bcheck = ">> vvss" Then $result = true;
For $i = 0 to 128*($Result == False) ; Keine Schleife, wenn $result = true
If $bcheck = ">> vv" & $i Then
$result = true ;
ExitLoop
EndIf
Next
Danke ihr seit die besten das funktioniert ohne probleme
edit: ich bekomm die zahl mit StringFormat nicht richtig formatiert ic hbekomme z.b immer 000100 oder 00080 raus
bzw. versteh ic hnicht ganz wie der befehl funktioniert.
Du brauchst: %02d
% -> Variable
0 -> Mit Nullen auffüllen
2 -> Mind. 2 Stellen
d -> decimal Integer
For $i = 0 To 128
ConsoleWrite(StringFormat ( ">> vv%02d" ,$i) & @CRLF)
Next
ah alles klar, danke schön