Gruppe nach Datum löschen
#1
Hallo Spezialisten
Ich habe eine Tabelle mit ca 15'000 Zeilen, welche gruppiert ist nach Spalte"E".
Gruppe ist immer durch eine Leerzeile getrennt.

Anforderung:
Ich möchte ein Datum definieren (über eine Aufforderung oder wie im Beispiel in der Zelle "G1"

Das Makro soll nun prüfen, wenn in einer Gruppe alle Daten in der Spalte "C" vor dem definierten Datum sind, wie z.B. 01.06.2018, dann sollen die Zeilen vom ganzen Block gelöscht werden. Bsp. Zeile 11-14

als 2. soll bei den stehen geliebenen Blöcke jene ungültig gekennzeichnet werden, welche das Datum dann vor den 01.06.2018 haben. Bsp. Zeile 6. Der Eintrag könnte in der Spalte "G" erfolgen.

Das wäre super, wenn dies so ginge
Gruss Norbert


Angehängte Dateien
.xlsx   Beispieltabelle.xlsx (Größe: 14,62 KB / Downloads: 6)
Top
#2
hat sich erledigt.
Grüße aus Nürnberg
Armin
Ich benutze WIN 10 (64bit) und Office 19 (32bit)
Top
#3
Hallo
wie z.B. Block Zeile 2-6, Eintrag "ungültig" in Zeile 6 und der ganze Block bleibt aber bestehen
Nur den ganzen Block löschen, wenn alle Daten älter sind als das vorgegebene Datum.
Top
#4
Hallo,

mit VBA und der Funktion "areas" ist es in jedem Fall lösbar, aber vielleicht gibt es noch einfachere Alternative.

mfg
Top
#5
Hallo,

versuche es mal mit:

Code:
Sub F_en()
Dim Tag As Date
Tag = Range("G1")

With Columns("C").SpecialCells(2, 1).Areas
    For i = .Count To 1 Step -1
        If Application.Max(.Item(i)) < Tag Then .Item(i).EntireRow.Delete
        For ii = 1 To .Item(i).Count
            If .Item(i).Cells(ii) < Tag Then Cells(.Item(i).Cells(ii).Row, "G") = "ungültig"
        Next ii
    Next i
End With
End Sub

Die Geschwindigkeit dürfte nicht so gut sein.

mfg
[-] Folgende(r) 1 Nutzer sagt Danke an Fennek für diesen Beitrag:
  • gbw-99
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste