Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1592to1596
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

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

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

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

16 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige