Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Frage zu "Do While"-Schleife

Forumthread: Frage zu "Do While"-Schleife

Frage zu "Do While"-Schleife
16.05.2007 08:57:49
lufius

Guten morgen,
ich habe eine Frage zu der "Do while" Schleife.
Die Aufgabe meines Makros ist es, so lange "Zähler" hochzuzählen, bis in der 1. Zelle der Zeile ein "x"steht.
Jetzt zu meinem Problem:
Es kann sein, dass statt dem "x" ein "y" oder "z" in der Zelle steht. Auch dann soll das Makro aufhören "zähler" hochzuzählen.
Mein Code:
Zähler = 1
Do While Cells(Zähler, 1).Value <> "x" And Cells(Zähler, 1).Value <> "y" And Cells(Zähler, 1).Value <> "z"
Zähler = Zähler + 1
Loop
Es hat funktioniert, solange ich nur nach "x" und "y" gesucht habe. Seit ich "z" mit eingebunden habe funktioniert es nicht mehr.
Vielen Dank für Eure Hilfe,
Gruß,
Tobias

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Frage zu "Do While"-Schleife
16.05.2007 09:39:12
Oberschlumpf
Hi Tobias
Dein Code funzt bei mir einwandfrei in...
...einer leeren Tabelle erscheint zum Schluss eine Fehlermeldung, weil es nun mal (bis Excel 2003) nur 65536 Zeilen gibt - Fehler also OK
...einer Tabelle mit "x" ODER "y" ODER "z" in Zeile 290 endet die Do/While-Schleife auch in Zeile 290, was ja von dir so gewünscht ist.
Beschreib noch mal in anderen Worten, was NICHT so funzt, wie du es gerne hättest.
Ciao
Thorsten

Anzeige
AW: Frage zu "Do While"-Schleife
16.05.2007 10:01:16
lufius
Hallo Thorsten,
danke für deine Mühe, ist wirklich sehr nett. Der Code den ich eingefügt habe ist nur ein Auszug aus meinem gesamten Code.
Der gesamte Code hat funktioniert solange ich nur "X" oder "y" benutze habe. Dann habe ich "Z" eingefügt und es hat nicht mehr funktioniert. Daraus habe ich gefolgert, dass es an der weiteren Bedingung der "do While" Schleife liegt.
Ich glaube es würde deinen Zeitrahmen sprengen wenn ich den gesamten Code hier reinstelle und dich frage warum es nicht funktioniert.
Ich erweitere den Auszug mal, vielleicht hast du ja einen Tip für mich.


Dim Zähler
Zähler = 1
Do While Cells(Zähler, 1).Value <> "X" And Cells(Zähler, 1).Value <> "y" And Cells(Zä _
hler, 1).Value <> "z"
Zähler = Zähler + 1
Loop
Zähler = Zähler - 1
For i = 1 To Zähler Step 1
Workbooks(a).Worksheets("Material").Activate
'Workbooks(a).Activate
'Worksheets(2).Activate
If Cells(i, 6).Value <> 0 Then
If Cells(i, 6).Value <> "PART NO." Then
Worksheets("Material").Rows(i).Copy
Windows("Materialauswertung.xls").Activate
Rows(i).Select
ActiveSheet.Paste
End If
End If
Next i
Dim x
For x = 1 To 7 Step 1
'Löscht alle leeren Zeilen aus dem Sheet
Windows("Materialauswertung.xls").Activate
Dim suche1 As Range
Dim zaehler1 As Long
For zaehler1 = 1 To Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row
zeile = Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row
Set suche1 = Sheets(1).Range("B" & zaehler1 & ":B" & zeile).Find("", LookIn:=xlValues)
If Not suche1 Is Nothing Then
zaehler1 = suche1.Row - 1
Sheets(1).Range(suche1.Row & ":" & suche1.Row).Delete Shift:=xlUp
Else: Exit For
End If
Next zaehler1
Next x


Vielen Dank für deine Mühe,
Gruß,
Tobias
P.s "x", "y" und "Z" sind jetzt gerade Platzhalter für eingentliche Sätze die in meinem Code stehen. Daran kann es doch aber nicht liegen, oder?
x=APPENDIX 03 MATERIAL OUT OF POOL STOCK
y=APPENDIX 04 OUTSIDE VENDOR CHARGES
z=APPENDIX 07

Anzeige
AW: Frage zu "Do While"-Schleife
16.05.2007 10:38:33
Rudi Maintaire
Hallo,
Achtung! Es wird der Text verglichen. Inkl. Groß- und Kleinschreibung. "Z" ist nicht gleich "z".
Do While UCase(Cells(Zähler, 1).Value) <> "APPENDIX 03 MATERIAL OUT OF POOL STOCK
" And UCase(Cells(Zähler, 1).Value) <> "APPENDIX 04 OUTSIDE VENDOR CHARGES" And UCase(Cells(Zä _
hler, 1).Value) <> "APPENDIX 07"
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Anzeige
AW: Frage zu "Do While"-Schleife
16.05.2007 10:59:56
lufius
Hallo Rudi,
danke für deine Hilfe. In meinem Code habe ich auf Groß-und Kleinschreibung geachtet. Vielen Dank. Wenn ich die Schleife Schritt für Schritt durchlaufen lasse funktioniert es auch (kann man in dem "Lokalen Fenster" erkennen). Habe irgendwo beim kopieren der Zeilen oder löschen der leeren Zeilen noch einen kleinen Fehler. Vermute eher beim löschen der leeren Zeilen, weil ich hierbei den Quellcode aus dem Forum übernommen habe und mir leider das Verständnis fehlt.
Ich danke euch erstmal für Eure Hilfe und werde noch ein bißchen herumprobieren...
Schöne Grüße aus Hannover,
Tobias

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige