Frage von Dave123321, 44

Excel ersten 5 Spalten automatisch löschen?

Servus,

Ich habe eine Exceldatei auf der z.B. der Name Andreas 8 mal steht und der Name Michael 6mal. Jetzt möchte ich das jeder name x-5 mal drauf steht. Bei Andreas also 8-5, er darf nur noch 3 x darauf stehen. Michael 6-5=1 mal auf der Liste stehen.

Und dabei müssen immer die ersten 5 Zeilen gelöscht werden!

Da es hier um mehrere Tausend Zeilen geht, will ich das automatisieren bzw. den Aufwand verringern.

Fällt jemand was dazu ein was für einen Laien leicht zu machen ist?

Expertenantwort
von Ninombre, Community-Experte für Excel, 24

Mein makrofreier Ansatz wäre dieser:

Wenn die Namen in Spalte A stehen

=WENN(ZÄHLENWENN(A$1:A$10000;A1)-5<ZÄHLENWENN(A1:A$10000;A1);"X";"")

wichtig sind die $ Zeichen! A$1:A$10000 ermittelt die Gesamtanzahl eines Namens, A1:A$10000 (da erhöht sich A1 zu A2, A3... mit steigender Zeilenzahl) die wievielte Wiederholung es ist (in umgekehrte Reihenfolge quasi)

Gibt es 8 Peter sind die ersten 5 Nennungen mit X zu löschen.

Formel für alle Einträge runterziehen / kopieren. Dann die Spalte mit der Formel kopieren > irgendwo als Werte einfügen, damit sich nichts mehr verändert und danach mit dem Autofilter die X filtern und löschen.

Kommentar von Oubyi ,

DH!
Ginge aber wohl auch etwas knapper:
Formel in z.B C2 (in C1 steht manuelle eingetragen ein X):

=WENN(ZÄHLENWENN($B$1:B2;B2)<=5;"X";"")

und runterkopieren.
Es sollte allerdings sichergestellt sein, dass keine Namen weniger als 6 mal vorkommen, sonst würde der Name komplett aus der Liste entfernt. Falls das nicht so ist, ist das hier die "sichere Seite":

=WENN(UND(ZÄHLENWENN(B2:$B$100000;B2)>1;ZÄHLENWENN($B$1:B2;B2)<=5);"X";"")

Kommentar von Ninombre ,

heute ist ein Tag zum kompliziert denken, wie es scheint

Kommentar von Oubyi ,

DAS passiert mir fast jeden Tag. 

Expertenantwort
von Suboptimierer, Community-Experte für Excel, 29

Mach in Spalte C (oder einer beliebigen anderen) einen  Zähler.

C1: =1
C2: =WENN(B2=B1;C1+1;1)

C2 herunterziehen.

Es geht noch weiter...

Kommentar von Suboptimierer ,
D1: =ZÄHLENWENN(B:B;B1)-5>=C1

D1 herunterziehen.

Dann legst du einen Autofilter auf die Tabelle und filterst in Spalte D auf WAHR.

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten