Anzeige
Archiv - Navigation
1580to1584
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

mit Schleife Tabelle durchlaufen, zeilen löschen

mit Schleife Tabelle durchlaufen, zeilen löschen
26.09.2017 21:14:19
Jan
Hallo liebe Community,
auf der Zielgeraden ist noch ein Problem aufgetreten.
Ich möchte mit Hilfe einer Schleife eine Tabelle durchlaufen und alle Werte Meine Vorschläge hierfür:
Sub test()
Dim anfang As Integer
Dim ende As Integer
ende = Range("C655351").End(xlUp).Row
For anfang = 2 To ende
If Range("C" & anfang).Value 
()
bei dieser Variante wird nichts gelöscht.
Variante 2:
Dim loeschen As Range
Dim bereich As Range
Set bereich = Range("C:C")
For Each loeschen In bereich.Rows
If loeschen.Value Rows.Select
Selection.delete Shift:=xlUp
End If
Next loeschen
Hier wird scheinbar alles gelöscht.
Habt ihr Tipps für mich?
Vielen Dank + Viele Grüße

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

Betreff
Datum
Anwender
Anzeige
AW: mit Schleife Tabelle durchlaufen, zeilen löschen
26.09.2017 21:25:04
Christian
... du must den Bereich von unten beginnend durchlaufen, also von unten weglöschen.
Gruß,
Christian
AW: mit Schleife Tabelle durchlaufen, zeilen löschen
26.09.2017 21:35:42
Christian
hier mal ein deiner Variante 1 umgesetzt (und das nicht notwendige Select-Zeugs rausgenommen).
Sub test2()
Dim anfang As Integer
Dim ende As Integer
ende = Range("C655351").End(xlUp).Row
For anfang = ende To 2 Step -1
If Range("C" & anfang).Value 
vg, Christian
AW: mit Schleife Tabelle durchlaufen, zeilen löschen
26.09.2017 21:38:45
Sepp
Hallo Jan,
1.: Schleifen die jede Zelle einzeln bearbeiten sind schnarchlangsam!
2.: Wenn du Zellen per Schleife löschst, musst du von unten nach oben arbeiten .
(For anfang = ende To 2 Step -1)
3.: Besser so.
Sub belowFifty()
Dim objRange As Range, lngEnd As Long
On Error GoTo ErrorHandler
Application.ScreenUpdating = False
With Sheets("Tabelle1")
  lngEnd = Application.Max(2, .Cells(.Rows.Count, 1).End(xlUp).Row)
  .Columns(1).Insert
  .Range(.Cells(2, 1), .Cells(lngEnd, 1)).Formula = "=IF(D2<50,1,"""")"
  If Application.Count(.Range(.Cells(2, 1), .Cells(lngEnd, 1))) > 0 Then
    Set objRange = .Range(.Cells(2, 1), .Cells(lngEnd, 1)).SpecialCells(xlCellTypeFormulas, 1)
    If Not objRange Is Nothing Then objRange.EntireRow.Delete
  End If
  .Columns(1).Delete
End With
ErrorHandler:
Application.ScreenUpdating = True
Set objRange = Nothing
End Sub

Gruß Sepp

Anzeige
AW: mit Schleife Tabelle durchlaufen, zeilen löschen
26.09.2017 23:29:03
Peter(silie)
Hallo,
ganz simple(sofern im Worksheet Code):
Sub DeleteRows()
Dim i, lRow As Long
lRow = Cells(Rows.Count, 3).End(xlUp).Row
For i = lRow To 2 Step -1
If Cells(i, 3).Value 

51 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige