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 ![]()