Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
400to404
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
400to404
400to404
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Loeschen Zeilen

Loeschen Zeilen
Josef
Folgendes Problem,
Ich habe eine Excel-Tabelle voller Daten und in Spalte D sind Zahlen wie
"009-30" und "008-3". Nun müssen alle Zeilen geloescht werden, in der die Zelle der Spalte D die vorher genannten Zahlen enthalten.
Ich habe bereits schon ein code dazu geschrieben, nur befolgt Excel diese
Anweisungen nicht. Weiß jemand vielleicht woran das liegen könnte.
Dim l As Long
Dim Z1 As Long
Sheets("Name").Activate
Z1 = ActiveSheet.UsedRange.Rows.Count
Range("D1").Select
For l = 1 To Z1
If ActiveCell.Value = "009-30" _
Then Selection.EntireRow.Delete _
Else ActiveCell.Offset(1, 0).Select
Next l

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Loeschen Zeilen
Hajo_Zi
Hallo Josef
hast Du schon mal die Recherche benutzt.
Auf Select kann in VBA zu 99% verzichtet werden.


AW: Loeschen Zeilen
MRP
Hallo Josef,
ohne VBA würde ich vorschlagen den Autofilter zu benutzen, und dort Benutzerdefiniert enthält 009-30 oder 008-3 dann markieren, Bearbeiten/gehe zu/iNhalte.. nur sichtbare Zellen, und dann wie gewohnt löschen.
Ciao
Manuele Rocco Parrino
AW: Loeschen Zeilen
harry
hi josef,
dein makro funkt einwandfrei, so sollte es im vba editor aussehen:

Sub test()
Dim l As Long
Dim Z1 As Long
Sheets("Tabelle1").Activate
Z1 = ActiveSheet.UsedRange.Rows.Count
Range("D1").Select
For l = 1 To Z1
If ActiveCell.Value = "009-30" Or ActiveCell.Value = "008-3" _
Then Selection.EntireRow.Delete _
Else ActiveCell.Offset(1, 0).Select
Next l
End Sub

liebe grüße,
Harry
Anzeige
AW: Loeschen Zeilen
Josef
Hallo Harry,
bei mir funktioniert das Makro nicht.
kann mir das nicht erklären! Auch wenn ich den richtigen Namen für Sheets eingebe.
liebe Grüße
Josef
AW: Loeschen Zeilen
harry
versuch mal

Sub test1()
For Each acell In Range(ActiveSheet.Cells(1, 4), _
ActiveSheet.Cells(Rows.Count, 4).End(xlUp))
If acell.Value = "009-30" Or acell.Value = "008-3" Then
ActiveSheet.Rows(acell.Row).Delete
End If
Next
End Sub

liebe grüße,
harry
AW: Loeschen Zeilen
Josef
Hallo Harry,
Danke für deine Hilfe, aber dieser Code funktioniert immer noch nicht.
Woran kann das liegen.

Sub LoeschenTest1()
For Each acell In Range(ActiveSheet.Cells(1, 4), _
ActiveSheet.Cells(Rows.Count, 4).End(xlUp))
If acell.Value = "009-30" Or acell.Value = "008-30" Then
ActiveSheet.Rows(acell.Row).Delete
End If
Next
End Sub

Gruß Josef
Anzeige
AW: Loeschen Zeilen
WernerB.
Hallo Josef,
wie gefällt Dir das?
Option Explicit

Sub Josef()
Dim i As Long, laR As Long
Application.ScreenUpdating = False
Sheets("Name").Select
laR = Cells(Rows.Count, 4).End(xlUp).Row
For i = laR To 1 Step -1
If Cells(i, 4).Text = "009-30" Then
Cells(i, 4).EntireRow.Delete
End If
Next i
Application.ScreenUpdating = True
End Sub

Viel Erfolg wünscht
WernerB.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige