Hallo zusammen!
Ich bin ganz neu hier im Forum, da ich bisher nur mit Programm-Sprachen wie C und Python in Kontakt gekommen bin. Seit zwei Tagen hab ich mich nun intensiv mit VB beschäftigt, da ich für eine Hausarbeit (Maschbau, ja es gibt auch Mädchen die so etwas tun! ) Makros in CatiaV5 Programmieren soll. Es geht hauptsächlich um Ein-, Ausgabe und Überprüfung von Werten. Bei folgender verschachtelter if-Schleife versteh ich beim besten Willen nicht, wo das Problem liegt:
Die eingangsdaten sind [d1]=14 und [Werkstoff]="Stahl, GS". Auch wenn der Wert [l] im Sollberreich liegt, verfängt sich die Schose in einer Endlosschleife von der Eingabe des Wertes zur Warnung, dass [l] ausserhalb des Intervalls liegt(obwohl es das nicht tut).
Wahrscheinlich schlagen 99% des Forums jetzt die Hände über dem Kopf zusammen:whistling:
Ich bitte trotzdem um schnelle Hilfe, entweder bin ich zu blind oder zu blöd den Fehler zu finden.
MfG Steffi
*Topic verschoben*
Ich bin ganz neu hier im Forum, da ich bisher nur mit Programm-Sprachen wie C und Python in Kontakt gekommen bin. Seit zwei Tagen hab ich mich nun intensiv mit VB beschäftigt, da ich für eine Hausarbeit (Maschbau, ja es gibt auch Mädchen die so etwas tun! ) Makros in CatiaV5 Programmieren soll. Es geht hauptsächlich um Ein-, Ausgabe und Überprüfung von Werten. Bei folgender verschachtelter if-Schleife versteh ich beim besten Willen nicht, wo das Problem liegt:
Visual Basic-Quellcode
- i=0
- Do until i=1
- l=InputBox("Bitte geben Sie die tragende Profillänge l in mm an:", "tragende Profillänge l", 30)
- m=MsgBox("Sie haben folgende tragende Profillänge l gewählt: "&l, 64 , "Gewählte tragende Profillänge l")
- if Werkstoff="GJL" then
- x=(2.2*d1)
- y=(2.6*d1)
- if l < x or l > y then
- m=MsgBox("Achtung! Die tragende Profillänge sollte im Intervall von " &(2.2*d1)& "mm bis " &(2.6*d1)&"mm liegen", 48, "Warnung")
- else
- i=1
- end if
- elseif Werkstoff="Stahl, GS" then
- x=(2.0*d1)
- y=(2.5*d1)
- if l < x or l > y then
- m=MsgBox("Achtung! Die tragende Profillänge sollte im Intervall von " &(2.0*d1)& "mm bis " &(2.5*d1)&"mm liegen", 48, "Warnung")
- else
- i=1
- end if
- end if
- loop
Die eingangsdaten sind [d1]=14 und [Werkstoff]="Stahl, GS". Auch wenn der Wert [l] im Sollberreich liegt, verfängt sich die Schose in einer Endlosschleife von der Eingabe des Wertes zur Warnung, dass [l] ausserhalb des Intervalls liegt(obwohl es das nicht tut).
Wahrscheinlich schlagen 99% des Forums jetzt die Hände über dem Kopf zusammen:whistling:
Ich bitte trotzdem um schnelle Hilfe, entweder bin ich zu blind oder zu blöd den Fehler zu finden.
MfG Steffi
*Topic verschoben*
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()