Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: fertiger Code - kann man den "schneller" machen ?

fertiger Code - kann man den "schneller" machen ?
28.11.2017 16:16:23
reiner
Hallo Forum,
VIELEN DANK nochmal für eure Hilfe bei meinem Problem :
Wert in Spalte suchen und bestimmte Zellen löschen !
Mein Code hier ist folgender :
Private Sub CommandButton2_Click()
Dim e As Object
For Each e In Sheets("Tabelle1").Range("E3:E" & Sheets("Tabelle1").Cells(Rows.Count, 5).End( _
xlUp).Row)
'Debug.Print e.Value
If e.Value = "Falsch" Then
Range(Cells(e.Row, 5), Cells(e.Row, 15)).Delete
End If
Next e
End Sub

--- mein Problem ist jetzt:
Der Code arbeitet sich sehr langsam durch die Tabelle !
Gibt es eine Möglichkeit - diese "Suche" zu optimieren bzw schneller zu machen ?
Beste Grüße vorab
Reiner
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: ungetestet!!!
28.11.2017 16:24:47
Fennek
Hallo,
so oder so ähnlich:

with columns("E")
.replace "falsch", "NA"
.specialcells(3,16).entirerow.delete
end with
mfg
AW: nochmal ungetestet!!!
28.11.2017 20:28:50
Fennek

with cells(1).currentregion
.autofilter 5, "falsch"
.offset(1).entirerow.delete 'Auswahl löschen OHNE Überschrift
.autofilter 'zurücksetzen
end with

Anzeige
AW: Getestet!!!
29.11.2017 13:40:20
Fennek
Hallo,
auch wenn der FRagende sich nicht wieder meldet, hier der korrigierte Code:

Sub Test()
Sheets(1).Range("A1:A12").Copy Sheets(2).Range("A1") 'nur zur Demo
With Sheets(2).Columns(1)
.Replace False, "=5/0"
.SpecialCells(3, 16).EntireRow.Delete shift:=xlUp
End With
End Sub
mfg
Anzeige
AW: fertiger Code - kann man den "schneller" machen ?
28.11.2017 16:52:04
Daniel
HI
kennzeichne die zu löschenden Zeilen in einer Hilfsspalte per Formel mit 0 und die Zeilen, die stehenbleiben müssen mit der aktuellen Zeilennummer.
In die Überschriftenzeile kommt ebenfalls die 0
dann kannst du die Zeilen mit der Funktion DATEN - DATENTOOLS - DUPLIAKTE ENTFERNEN löschen.
Geht von Hand oder auch mit Makro und ist über die Formel einfach an alle möglichen Aufgaben zum Thema "Zeilen mit Bedingung löschen" anpassbar:
With Sheets("Tabelle1")
With .Specialcells(xlcelltypelastcell)
With .Range(.Offset(2 - .Row, 1), .Offset(0, 1))
.FormulaR1C1 = "=IF(RC5=""Falsch"",0,Row())"
.Cells(1, 1).Value = 0
.EntireRow.RemoveDuplicates .column, xlno
.clearContents
end with
end with
end with
Gruß Daniel
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
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