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

Forumthread: VBA Anzahl in Zelle C18 schreiben/ einfrieren

VBA Anzahl in Zelle C18 schreiben/ einfrieren
Marcy
Hallo Forum,
mit unterem Code entferne ich meine doppelten Einträge in Spalte A ab Zeile 25.
Funktioniert auch.
Jetzt hätte ich allerdings gerne mindestens eine Erweiterung:
In Zelle C18, soll vor dem Löschen die Anzahl der gefüllten Zellen (handelt sich um Zahlen) eingetragen werden.
Beispiel vor dem Löschen Spalte A
1
1
2
2
3
3
4
4
Nach Ausführung des Codes soll in C18 dann 8 stehen. In D18 steht von mir geschrieben :Identnummern umfasste die Liste vor Entfernung der Doppelten.
die Spalte A sieht nach Ausführung dann so aus:
1
2
3
4
Da ich mir sicher bin, dass jemand hier den Code optimieren kann (schneller) wäre ich auch dafür dankbar.
Da für diese Vorlage nicht klar ist, wie lang die Liste sein kann, die hiermit gekürzt werden soll, sollte der Code bis ganz unten gehen.
PS: Mache jetzt Feierabend, denke eine Antwort von mir ist erst morgen zu erwarten.
Gruß Marcy

Sub DoppelteZeilenLöschen()
Dim iRow As Integer, iRowL As Integer
On Error GoTo ErrExit
iRowL = Cells(Cells.Rows.Count, 1).End(xlUp).Row
Application.ScreenUpdating = False
If iRowL > 25 Then
For iRow = iRowL To 25 Step -1
If WorksheetFunction.CountIf(Range("A25:A" & iRowL), Cells(iRow, 1)) > 1 Then
Rows(iRow).Delete
End If
Next iRow
End If
ErrExit:
Application.ScreenUpdating = True
End Sub

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: VBA Anzahl in Zelle C18 schreiben/ einfrieren
27.10.2011 08:24:59
Marc
Guten Morgen!
Rows(iRow).Delete braucht ziemlich Zeit. Wäre es nicht möglich, die Zellinhalte nur zu löschen und am Ende zu sortieren (um die leeren Zellen aus dem Bereich zu kriegen)?
Das "Application.ScreenUpdating = True" ist unnötig, wird am Ende jeder Prozedur immer eingeschaltet
gefüllte Zellen kannst du anschließend mit
WorksheetFunction.CountIf(Range("A25" & ":A" & iRowL), Cells(iRow, 1)) zählen
Gruß; Marc
Anzeige
AW: VBA Anzahl in Zelle C18 schreiben/ einfrieren
27.10.2011 12:42:13
Marcy
Hallo Marc,
wie schon geschrieben bin ich für jede Verbesserung dankbar.
Werde es morgen testen, die Datei ist auf der Arbeit.
Ich möchte aber nicht anschließend zählen, sondern vor dem Löschen.
Dieser Wert soll dann eingefroren in C18 stehen.
Dann kann man sehen, wie viele Identnummern vorher da waren und wie viele es jetzt sind.
Gruß Marcy
Anzeige

Forumthreads zu verwandten Themen

Anzeige
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