Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1000to1004
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
Inhaltsverzeichnis

Schleife

Schleife
22.08.2008 12:11:00
Schulze
Halli Hallo,
ich habe eine kurze Frage zu einer Schleife. Ich habe im Folgenden eine Testdatei hochgeladen.
https://www.herber.de/bbs/user/54815.xls
Vielen Dank im Voraus
Gruss Melchior

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schleife
22.08.2008 12:15:00
Schulze
ohe ich hatte das wichtigste ja ganz vergessen:
die schliefe soll die spalte a untersuchen und dabei alle null-werte löschen.
gruss melchior

AW: Schleife
22.08.2008 12:25:31
Rolli
Hallo Melchior,
willst du die ganze Zeile löschen oder nur die Nullen unsichtbar machen?
Gruß
Rolli

AW: Schleife
22.08.2008 12:36:21
Schulze
Hi Rolli,
ich würde gerne die ganze Zeile löschen.
Gruss Melchior

AW: Schleife
22.08.2008 13:08:00
Rolli

Sub KillZero()
Dim xlWbk As Workbook
Set xlWbk = ThisWorkbook
Dim xlSht As Worksheet
Set xlSht = xlWbk.Worksheets("Tabelle1")
Dim i&
For i = 1 To xlSht.Cells.SpecialCells(xlCellTypeLastCell).Row
'Wenn Zelle leer abbrechen
If xlSht.Cells(i, 1).Text = "" Then Exit For
'Wenn Wert gleich 0 --> Zeile löschen
If xlSht.Cells(i, 1).Value = 0 Then
xlSht.Rows(i).Delete
i = i - 1
End If
Next i
Set xlSht = Nothing
Set xlWbk = Nothing
End Sub


Anzeige
AW: Schleife
22.08.2008 13:38:35
Schulze
Hi Rolli,
dein Vorschlag ist echt gut. Jedoch wenn ich zuerst mein Tabellenblatt in einer neuen Datei kopiere und im gleichen Code deinen VBA-Code dranhänge, klappt das leider nicht. D.h. es werden keine Nullen gelöscht.
Hoffentlich kannst du mir weiterhelfen.
Gruss Schulze

AW: Schleife
22.08.2008 13:04:54
mpb
Hallo Melchior,

Sub Nullen_löschen()
z = Range("A65536").End(xlUp).Row
For i = z To 1 Step -1
If Cells(i, 1) = 0 Then
Rows(i).EntireRow.Delete
End If
Next i
End Sub


Hat Dir meine Antwort zu Deiner früheren Anfrage (Kopieren wenn nicht Null) weitergeholfen? Du hast darauf leider nicht mehr reagiert.
Gruß
Martin

Anzeige
AW: Schleife
22.08.2008 13:34:00
Schulze
Hi Martin
sorry, ich hatte die letzten Tage super viel Stress. Deine jetziger Vorschlag ist super. Jedoch wenn ich nun das Tabellenblatt per Code erst in eine neue Datei kopiere und dann deinen Vorschlag durchführe, dann klappt das nicht, leider. Hoffentlich kann st du mir weiterhelfen.
Gruss Melchior

AW: Schleife
22.08.2008 13:58:00
mpb
Hallo Melchior,
dann musst Du das Tabellenblatt mit referenzieren. Mal angenommen, Du kopierst in das Blatt "Ziel":

Sub Nullen_löschen()
With Worksheets("Ziel")
z = .Range("A65536").End(xlUp).Row
For i = z To 1 Step -1
If .Cells(i, 1) = 0 Then
.Rows(i).EntireRow.Delete
End If
Next i
End With
End Sub


Code bitte mit copy and paste einfügen, da einige nicht so offensichtlich Punkte (".") eingefügt wurden.
Ich vermute allerdings, dass Nullen löschen ist nur ein anderer Weg ist, um zu erreichen, dass als Ergebnis des Kopiervorgangs nur noch Zeilen mit "echten Werten" in Spalte A übrig bleiben. Dann brauchst Du diesen Code überhaupt nicht, das erledigt der von mir in dem anderen Thread gepostete Zweizeiler schneller und eleganter. Schau's Dir mal an.
Gruß
Martin

Anzeige
einfach genial
22.08.2008 13:41:00
{mskro}
Hallo Martin,
da lernt so macher Beobachter auch noch mit.
Genial die Rückwärtsschleife. Ich wusste gar nicht, das das so auch geht.
Gruß Manfred

wieder offen
22.08.2008 13:44:00
{mskro}
...sorry, wollte den Thread nicht mit meiner Bemerkung schliessen.
Gruß Manfred

AW: wieder offen
22.08.2008 17:17:33
Schulze
Hi,
ich danke euch allen für die guten Vorschläge :-)
Passt nun alles wunderbar ;-)
Vielen Dank noch mal
Gruss Melchior

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige