Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: If true dann Zeile löschen

If true dann Zeile löschen
21.11.2019 12:11:49
georg11
Hallo,
ich habe folgenden Code.

Sub lief()
Dim wks As Worksheet
Dim lngLetzte As Long, lngI As Long, lngA As Long
Application.ScreenUpdating = False
Set wks = ThisWorkbook.Worksheets("Sheet1")
With wks
lngLetzte = .Range("A1048576").End(xlUp).Row
For lngI = lngLetzte To 2 Step -1
lngA = lngI - 1
'MsgBox lngI, , "Meldung"
'MsgBox lngA, , "Meldung"
If Worksheets("Sheet1").Range("F" & lngI).Value = Worksheets("Sheet1").Range("F" &   _
_
lngA).Value And Worksheets("Sheet1").Range("G" & lngI).Value = Worksheets("Sheet1").Range("G" &  _
lngA).Value And Worksheets("Sheet1").Range("C" & lngI).Value = Worksheets("Sheet1").Range("C" & lngA).Value Then
Worksheets("Sheet1").Rows(lngI).Delete
MsgBox Text1 & vbLf & Text2, , "Meldung"
MsgBox Text1 & vbLf & Text2, , "Meldung"
Else
lngLetzte = lngLetzte - 1
End If
Next lngI
End With
Set wks = Nothing
Application.ScreenUpdating = True
End Sub

Mein Ziel ist es, dass wenn alle 3 Zellen mit den Zellen obendrüber übereinstimmen eine davon gelöscht wird.
Das Zählen funktioniert, nur das Löschen irgendwie nicht. Hat jemand Tipps?
Vielen Dank und einen schönen Tag
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: If true dann Zeile löschen
21.11.2019 12:39:30
Rudi
Hallo,
Sub lief()
Dim wks As Worksheet
Dim lngLetzte As Long, lngI As Long, lngA As Long
Application.ScreenUpdating = False
Set wks = ThisWorkbook.Worksheets("Sheet1")
With wks
lngLetzte = .Range("A1048576").End(xlUp).Row
For lngI = lngLetzte To 2 Step -1
lngA = lngI - 1
If .Range("F" & lngI) = .Range("F" & lngA) And _
.Range("G" & lngI) = .Range("G" & lngA) And _
.Range("C" & lngI) = .Range("C" & lngA) Then
.Rows(lngI).Delete
MsgBox Text1 & vbLf & Text2, , "Meldung"
End If
Next lngI
End With
Set wks = Nothing
Application.ScreenUpdating = True
End Sub

Gruß
Rudi
Anzeige
AW: If true dann Zeile löschen
22.11.2019 06:19:11
georg11
Guten Morgen, danke für deinen Versuch, leider funktioniert es bei mir nicht. Hat es bei dir funktioniert?
Liebe Grüße
Georg
AW: If true dann Zeile löschen
21.11.2019 12:40:27
Hajo_Zi
Die meisten bauen Deine Datei nicht nach. Die Zeit hat schon jemand investiert.
Ein Nachbau sieht meist anders aus als das Original. Darum sollte das Original verlinkt werden.
Die meisten möchten es am Original testen um den gleichen Fehler zu erhalten.
Benutze hier im Forum die Funktion zum hochladen. Falls Du die nicht benutzen möchtest beachte, von unsicheren Servern wie z.B. www.file-upload.net lade ich keine Datei runter. (lt. Einschätzung meines Virenprogramms)
Das ist nur meine Meinung zu dem Thema.

Anzeige
blablabla... owT
21.11.2019 12:45:18
Rudi
AW: If true dann Zeile löschen
22.11.2019 22:58:34
Piet
Hallo Georg
komisch das manche Intelligente Ratgeber immer Beispieldateien brauchen, wenn man sich NUR den Code mal richtig anschauen muss. Man sollte vielleicht lernen "bis drei" zu zaehlen!
Bei mir klappte der Code auch nicht auf Anhieb, er funktioniert aber trotzdem! Mein Fehler war, das die Spalte A beim testen leer war! Dort wird aber die LastZelle gesucht. GGf. musst du den Teil auf die richtige Spalte aendern. Vielleicht C, F oder G - lngLetzte = .Range("A1048576").End(xlUp).Row
PS - es fehlt auch der Text für die MsgBox, da kommt Keine Anzeige!!
mfg Piet
Sub lief()
Dim lngLetzte As Long, lngI As Long, lngA As Long
Application.ScreenUpdating = False
With ThisWorkbook.Worksheets("Sheet1")
lngLetzte = .Range("A1048576").End(xlUp).Row
For lngI = lngLetzte To 2 Step -1
lngA = lngI - 1
If .Range("F" & lngI) = .Range("F" & lngA) And _
.Range("G" & lngI) = .Range("G" & lngA) And _
.Range("C" & lngI) = .Range("C" & lngA) Then
.Rows(lngI).Delete
MsgBox Text1 & vbLf & Text2, , "Meldung"
End If
Next lngI
End With
Application.ScreenUpdating = True
End Sub

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
Anzeige

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