Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1816to1820
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

Zeile i, i+1 löschen

Zeile i, i+1 löschen
04.03.2021 11:28:31
FL
Hallo,
leider nicht fündig geworden zu diesem Thema.
Ich möchte gerne unter Bedingung Zeilen! löschen. Es soll dabei die Zeile i und die danach also i+1 gelöscht werden.
Hier mein Pseudocode
Sub zwei_Zeilen_löschen_unter_Bedingung()
Dim i As Integer
Application.ScreenUpdating = Flase
For i = 20 To 450
If Cells(i,10).Value = "No" Then
Rows(i).Delete
End If
If Cells(i,5).Value = "" And Cells(i,2)  "B" And Cells(i,2).Interior.ColorIndex = xlNone Then
Rows(i).Delete
End If
Next i
Application.ScreenUpdating = True
Range("A1").Select
End Sub

Vielleicht habt ihr da Tipps für mich :) Danke schonmal!
Viele Grüße

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeile i, i+1 löschen
04.03.2021 11:38:34
Daniel
Hi
bei Excel gut geht Zeilen löschen am besten so:
1. schreibe in eine Hifsspalte eine Formel, die für alle Zeilen, die gelöscht werden sollen die 0 als ergebnis hat und für alle Zeilen, die stehen bleiben sollten die jeweilge Zeilennummer (Zeile())
2. schreibe in die Überschriftenzeile dieser Hilfsspalte immer die 0
3. markiere den ganzen Bereich und wende auf ihn den Menübefehl DATEN - DATENTOOLS - DUPLIKATE ENTFERNEN an, mit der Hilfsspalte als Kriterium und der Option "keine Überschrift".
Dann werden alle Zeilen mit 0 als Duplikate der ersten Zeile (diese bleibt stehen) entfernt
4. lösche die Hilfsspalte.
Beispielcodes für dieses vorgehen findst du im Archiv, Suchworte wären "Zeilenlöschen", "Bedingung" und ggf mein Name.
solltest du lieber bei deiner Schleife bleiben sollen, so musst du beachten dass beim Löschen von Zeilen die Schleife nicht von oben nach unten (20 to 450) sondern von unten nach oben (450 to 20 step - 1)
Das problem ist, dass sonst durch die nachrutschenden Zeilen Schleifenzähler und neue Zeilennummern nicht mehr zusammenpassen.
wenn du eine Zeile und die darunter liegende Zeilen löschen willst, dann geht das einfach mit :
Rows(i).Resize(2).Delete
Gruß Daniel

Anzeige
AW: Zeile i, i+1 löschen
04.03.2021 11:54:33
FL
Hallo Daniel,
vielen Dank für deine ausfürliche Antwort!
Um das zu erreichen, was ich wollte hat dein Code mit
Row(i).Resize(2).Delete
wunderbar funktioniert!
Ich danke dir sehr!
Viele Grüße :)

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige