Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
968to972
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
968to972
968to972
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Loop Funktion

Loop Funktion
22.04.2008 20:20:23
Leitz
Hallo!
Habe ein Problem mit einer Abfarage lt. Anhang.
Was mach ich da falsch möchte drei mal ein Loop aber es geht nicht!
https://www.herber.de/bbs/user/51772.xls
Bitte um Hilfe
Gruss
Leitz G.

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Loop Funktion
22.04.2008 22:02:00
Uwe
Hi Leitz,
"dreimal ein Loop" verstehe ich nicht ganz, aber wenn Deine BEIDEN Loops so aussehen, klappt es jedenfalls, dass ein neues Tabellenblatt nach Abfrage angelegt wird:
Do
Do
vntInput = InputBox("Monat und Jahr eingeben für Tabellenblattnamen! Format: MMJJ", "Eingabe")
If vntInput Like "####" Then Exit Do
If vntInput "" Then MsgBox "Eingabe ist nicht korrekt!", vbCritical, "Fehler"
Loop
strEingabeKorrekt = MsgBox("Ist die Eingabe korrekt? : " & vntInput, vbYesNo + vbQuestion)
If strEingabeKorrekt = 6 Then Exit Do
Loop
Hilft Dir das, sonst frag' nochmal genauer nach.
Gruß
Uwe
(:o)

Anzeige
AW: Loop Funktion
22.04.2008 22:08:59
Daniel
Hi
also ich kann nur 2 Do-Loop-Schleifen erkennen.
Ohne jetzt verstehen zu wollen, was du machen willst, hast du folgenden Fehler:
die Zeile

If strEingabeKorrekt = MsgBox("Ist die Eingabe korrekt? :      " & vntInput, vbYesNo + vbQuestion) = vbNo Then


hat nach THEN keinen weiteren Befehl mehr, damit gilt der IF-Block bist zum nächsten END IF.
damit ist auch das LOOP darunter innerhalb des IF-Blocks und somit Überschneiden sich DO-LOOP und IF-End IF und das funktioniert nicht.
dh. du hast dir in etwa sowas gebaut:


Do
IF...Then
Loop
End if


aber das funktioniert nicht.
korrekt wäre so:


Do
If...Then
End if
Loop


oder:


If...Then
Do
Loop
Eind if


gewöhnde dir an, bei der Codeerstellenung alles was innerhalb Schleifen (DO-LOOP, FOR-NEXT) und Bedingungen (IF THEN - ELSE - END IF, SELECT CASE) steht, mit der Tab-Taste einzurücken, damit du die Strukturen und etwaige Fehler leichter erkennst.
dein Code (nicht korrigiert) würde dann so aussehen:


Worksheets.Add After:=Worksheets(Worksheets.Count)
Dim strPräfix As String
Dim vntInput As Variant
Dim strEingabeKorrekt As String
Dim strSheetname As String
Dim Wks As Worksheet
Dim WksName As String
strPräfix = "Test"
Do
Do
vntInput = InputBox("Monat und Jahr eingeben für Tabellenblattnamen!    Format: MMJJ" _
, "Eingabe")
If vntInput Like "####" Then Exit Do
If vntInput  "" Then MsgBox "Eingabe ist nicht korrekt!", vbCritical, "Fehler"
Loop
If strEingabeKorrekt = MsgBox("Ist die Eingabe korrekt? :      " & vntInput, vbYesNo +  _
vbQuestion) = vbNo Then 'hier ist der Fehler
Loop
strSheetname = (strPräfix & vntInput)
For Each Wks In Worksheets
If Wks.Name = strSheetname Then
WksName = Wks.Name
End If
Next
If WksName = strSheetname Then
MsgBox "Die Datei enthält bereits ein Tabellenblatt mit diesen Namen Bitte überprüfen",  _
vbCritical, "Fehler"
End If
ActiveSheet.Name = (strSheetname)
End Sub


Gruß, Daniel

Anzeige
AW: Loop Funktion
22.04.2008 23:33:26
Leitz
Hallo!
Danke für die Hilfe !
Habs geschafft!
Gruss
Leitz G.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige