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

Makroablauf

Makroablauf
07.10.2005 09:50:02
Werner
Hallo zusammen,
mit diesem Makro lösche ich in der Spalte 8 alle doppelten Einträge.
In der Version 2000 ging das Makro schneller als jetzt in der Version 2003.
Gibt es eine möglichkeit das wieder schneller zu machen?

Private Sub CommandButton1_Click()
Dim SuBe As Range
Dim i As Long, laR As Long
Application.ScreenUpdating = False
laR = Cells(Rows.Count, 3).End(xlUp).Row
For i = laR To 2 Step -1
laR = Cells(Rows.Count, 3).End(xlUp).Row
Set SuBe = ActiveSheet.Range(Cells(1, 8), Cells(i - 1, 8)) _
.Find(Cells(i, 8), lookat:=xlWhole)
If Not SuBe Is Nothing Then
SuBe.EntireRow.Delete
End If
Next i
Application.ScreenUpdating = True
End Sub

Gruss Werner

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

Betreff
Datum
Anwender
Anzeige
AW: Makroablauf
07.10.2005 10:03:45
Mag
Hi,
entferne erst einmal die überflüssige Zeile
laR = Cells(Rows.Count, 3).End(xlUp).Row
in der ForNext-Schleife.
Gruss
AW: Makroablauf
07.10.2005 10:29:06
MartinS
Hallo Werner,
ergänz zusätzlich zur Bildschirmaktualisierung noch folgendes:
Application.Calculation = xlCalculationManual
Application.EnableEvents = False
und natürlich am ende:
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
Gruß,
Martin
AW: Makroablauf
07.10.2005 11:16:35
Werner
Hallo Mag und Martin,
danke für eure schnelle hilfe.
Das Makro läuft mit Martins Vorschlag super.
gruss Werner
Danke für die Rückmeldung
07.10.2005 11:55:16
MartinS
Immer wieder gerne ;-)
Gruß
Martin
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige