Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
544to548
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
544to548
544to548
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

...die Schleife ärgert mich noch immer...

...die Schleife ärgert mich noch immer...
11.01.2005 18:26:48
Jan
Ahoi,
ich verstehe die Schleife nicht, die macht ja was sie will!!!
Ich hoffe mir kann jemand helfen.
Jan

Sub WandlängeNS()
Beginn:
Worksheets("Vario&Konst").Select
WandlängeMind = 1.585
'Sheets("Vario&Konst").Cells(16, 5).Value
WandlängeMax = 5.505
'Sheets("Vario&Konst").Cells(16, 6).Value
Wandlänge = InputBox("Bitte geben Sie die Wandlänge in Meter ein!")
If Wandlänge < WandlängeMind Then
MsgBox ("Wert zu klein! Bitte neuen Wert eingeben")
GoTo Beginn
End If
If Wandlänge > WandlängeMax Then
MsgBox ("Wert zu groß! Bitte neuen Wert eingeben")
GoTo Beginn
End If
'If WandlängeMind > WandlängeMaxNS Then
'     If Fenstergesamtbreite < WandlängeNS Then
MsgBox ("Wert OK!")
'End If
Sheets("Vario&Konst").Cells(16, 3).Value = Wandlänge
Worksheets("Vario&Konst").Select
End Sub

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ...die Schleife ärgert mich noch immer...
Udo
Was'n für eine Schleife? Gewöhn dir besser gleich an, Variablen zu verwenden und
natürlich auch deklarieren.
Udo
AW: ...die Schleife ärgert mich noch immer...
PeterW
Hallo Jan,
du musst schon schreiben, was an der Schleife nicht klappt. Habe dir hier die gleiche mal ohne das unnötige GoTo gebaut, die aber exakt die gleiche Funktionalität wie deine hat:

Sub WandlängeNS()
Dim WandlängeMind As Double, WandlängeMax As Double, Wandlänge As Double
'Worksheets("Vario&Konst").Select
WandlängeMind = 1.585
'Sheets("Vario&Konst").Cells(16, 5).Value
WandlängeMax = 5.505
'Sheets("Vario&Konst").Cells(16, 6).Value
Do
Wandlänge = InputBox("Bitte geben Sie die Wandlänge in Meter ein!")
If Wandlänge < WandlängeMind Then
MsgBox ("Wert zu klein! Bitte neuen Wert eingeben")
End If
If Wandlänge > WandlängeMax Then
MsgBox ("Wert zu groß! Bitte neuen Wert eingeben")
End If
Loop Until Wandlänge > WandlängeMind And Wandlänge < WandlängeMax
'If WandlängeMind > WandlängeMaxNS Then
'     If Fenstergesamtbreite < WandlängeNS Then
MsgBox ("Wert OK!")
'End If
Sheets("Vario&Konst").Cells(16, 3).Value = Wandlänge
Worksheets("Vario&Konst").Select
End Sub

Gruß
Peter
Anzeige
AW: ...die Schleife ärgert mich noch immer...
11.01.2005 18:44:23
Eva
Hallo Jan,
meines Erachtens nach müsste noch eine if Abfrage folgen, die eine Aussage trifft, wenn die Wandlänge zwischen Max und Min liegt. Bisher prüfst du nur die Extremzustände ab.
Gruß
eva
AW: ...die Schleife ärgert mich noch immer...
Volker
Hallo Jan,
wer wird denn gleich in die Luft gehen, greif lieber zur while/wend-Schleife:

Sub WandlängeNS()
Worksheets("Vario&Konst").Select
wandlänge = 0
WandlängeMind = 1.585
'Sheets("Vario&Konst").Cells(16, 5).Value
WandlängeMax = 5.505
'Sheets("Vario&Konst").Cells(16, 6).Value
While wandlänge > WandlängeMax And wandlänge < WandlängeMind
wandlänge = InputBox("Bitte geben Sie die Wandlänge in Meter ein!")
If wandlänge < WandlängeMind Then
MsgBox ("Wert zu klein! Bitte neuen Wert eingeben")
ElseIf wandlänge > WandlängeMax Then
MsgBox ("Wert zu groß! Bitte neuen Wert eingeben")
End If
Wend
MsgBox ("Wert OK!")
Sheets("Vario&Konst").Cells(16, 3).Value = wandlänge
Worksheets("Vario&Konst").Select
End Sub

Gruß
Volker
Anzeige
AW: ...die Schleife ärgert mich noch immer...
AndréL.
Hallo,
probier das mal aus:

Sub WandlängeNS11()
Beginn:
Worksheets("Vario&Konst").Select
WandlängeMind = 1.585
'Sheets("Vario&Konst").Cells(16, 5).Value
WandlängeMax = 5.505
'Sheets("Vario&Konst").Cells(16, 6).Value
Wandlänge = Application.InputBox("Bitte geben Sie die Wandlänge in Meter ein!", Type:=1)
If Wandlänge < WandlängeMind Then
MsgBox ("Wert zu klein! Bitte neuen Wert eingeben")
GoTo Beginn
ElseIf Wandlänge > WandlängeMax Then
MsgBox ("Wert zu groß! Bitte neuen Wert eingeben")
GoTo Beginn
End If
'If WandlängeMind > WandlängeMaxNS Then
'     If Fenstergesamtbreite < WandlängeNS Then
MsgBox ("Wert OK!")
'End If
Sheets("Vario&Konst").Cells(16, 3).Value = Wandlänge
Worksheets("Vario&Konst").Select
End Sub

Gruß
AndréL.
Anzeige
Danke, Danke, Danke
11.01.2005 19:18:16
Jan
Ich verneige mich vor Euch für Eure selbstlose und prompte Hilfe. Ihr habt mir wirklich geholfen.
Schönen Abend wünscht Euch Jan.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige