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

Forumthread: Zeilen ausblenden mit bestimmten Datum

Zeilen ausblenden mit bestimmten Datum
17.08.2006 14:40:40
Susi
Hallo ich habe folgendes Problem,
ich habe eine Liste mit 100 Zeilen. Jede Zeile hat eine Datumsspalte. Jetzt möchte ich alle Zeilen ausblenden, wo das Datum älter als der aktuelle Monat ist. Beispiel:
Zeile 1 - 01.06.2006
Zeile 2 - 02.07.2006
Zeile 2 - 24.08.2006
Zeile 3 - 31.08.2006
Ausgeblendet werden sollen nur Zeile 1 und 2, da diese Zeilen angaben vom Vormonat haben, welche nicht interessieren.
Gibt es hierz eine Excel-Formel - VBA wäre auch OK.
Danke und Gruß
SUSI
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen ausblenden mit bestimmten Datum
17.08.2006 14:52:24
u_
Hallo,

Sub tt()
Dim c As Long
Application.ScreenUpdating = False
For c = 2 To Cells(65536, 1).End(xlUp).Row
Rows(c).EntireRow.Hidden = (Month(Cells(c, 1)) < Month(Date))
Next
Application.ScreenUpdating = True
End Sub

Gruß
Lesen gefährdet die Dummheit
Anzeige
AW: Zeilen ausblenden mit bestimmten Datum
17.08.2006 16:11:56
SUSI
Hallo,
leider bekomme ich einen Fehler.
&ltpre&gt
Private Sub CommandButton4_Click()
Dim c As Long
Application.ScreenUpdating = False
For c = 10 To Cells(65536, 9).End(xlUp).Row
Rows(c).EntireRow.Hidden = (Month(Cells(c, i)) &lt Month(Date)) &lt= break !!!!!
Next
Application.ScreenUpdating = True
End Sub&lt/pre&gt
Type mismatch. Das Datum liegt im Format 10.02.06 vor. Wo ist das Problem ? Bitte um Hilfe.
Danke
SUSI
Anzeige
AW: Zeilen ausblenden mit bestimmten Datum
17.08.2006 16:44:19
u_
Hallo,
ist das Datum wirklich ein Datum oder ein Text, der wie ein Datum aussieht?
Abhilfe: Rows(c).EntireRow.Hidden = (Month(Cells(c, i)*1) &lt Month(Date))
Gruß
Lesen gefährdet die Dummheit
AW: Zeilen ausblenden mit bestimmten Datum
17.08.2006 16:56:28
SUSI
Geht auch nicht. Type mismatch.
Das feld ist eine Referenz
=Berichtsvorlage!K14
auf ein Feld K14 welches als Custom TT.MM.YY definiert ist.
Gruß
SUSI
Anzeige
AW: Zeilen ausblenden mit bestimmten Datum
17.08.2006 17:17:03
u_
Hallo,
du hast geschrieben: Cells(c,i). Welchen Wert hat i? In meinem Code war es Cells(c,1), ausgehend davon, dass das Datum in Spalte A steht.
Gruß
Lesen gefährdet die Dummheit
AW: Zeilen ausblenden mit bestimmten Datum
17.08.2006 17:19:10
SUSI
sorry,
der Fehler ist ein andere. In dem Vergleichsfeld des Datums stehtehen auch Werte wie Q1, Q2 etc. für Quartal 1 etc. Q1 wäre als 31.03. Q2 als 30.06 zu interpretieren. Wie mache ich das ?
SUSI
Anzeige
AW: Zeilen ausblenden mit bestimmten Datum
17.08.2006 17:43:47
u_
Hallo,
also derartige Überraschungen mag ich aber gar nicht! Klare Problembeschreibung-klare Antwort.
Letzte! Version. Danach musst du selbst sehen, wie du klar kommst.

Sub tt()
Dim c As Long, tmp As Date
Application.ScreenUpdating = False
For c = 2 To Cells(65536, 1).End(xlUp).Row
Select Case Cells(c, 1)
Case "Q1", "Q2", "Q3", "Q4"
tmp = DateSerial(Year(Date), Right(Cells(c, 1), 1) * 3 + 1, 0)
Case Else
tmp = Cells(c, 1)
End Select
Rows(c).EntireRow.Hidden = (Month(tmp) < Month(Date))
Next
Application.ScreenUpdating = True
End Sub
Gruß
Lesen gefährdet die Dummheit
Anzeige
AW: Zeilen ausblenden mit bestimmten Datum
18.08.2006 13:18:53
SUSI
Vielen Dank.
Gruß
SUSI
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Zeilen ausblenden mit bestimmten Datum in Excel


Schritt-für-Schritt-Anleitung

Um die Zeilen in Excel auszublenden, die ein Datum älter als der aktuelle Monat haben, kannst du die folgende VBA-Makro-Anleitung verwenden. Diese Anleitung funktioniert in Excel-Versionen, die VBA unterstützen.

  1. Öffne Excel und drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.

  2. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.

  3. Kopiere den folgenden VBA-Code in das Modul:

    Sub AusblendenAltererDaten()
        Dim c As Long, tmp As Date
        Application.ScreenUpdating = False
        For c = 2 To Cells(65536, 1).End(xlUp).Row
            Select Case Cells(c, 1)
                Case "Q1", "Q2", "Q3", "Q4"
                    tmp = DateSerial(Year(Date), Right(Cells(c, 1), 1) * 3 + 1, 0)
                Case Else
                    tmp = Cells(c, 1)
            End Select
            Rows(c).EntireRow.Hidden = (Month(tmp) < Month(Date))
        Next
        Application.ScreenUpdating = True
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Drücke ALT + F8, wähle das Makro AusblendenAltererDaten aus und klicke auf Ausführen.

Jetzt werden alle Zeilen mit einem Datum älter als der aktuelle Monat ausgeblendet.


Häufige Fehler und Lösungen

  • Type Mismatch: Wenn du die Fehlermeldung "Type Mismatch" erhältst, überprüfe, ob die Datumswerte in der richtigen Formatierung vorliegen. Excel muss diese als Datum erkennen und nicht als Text.

  • Unbekannte Werte: Wenn in deiner Datumsspalte auch Werte wie "Q1", "Q2" usw. vorhanden sind, stelle sicher, dass du diese korrekt behandelst. Der obige Code zeigt, wie man diese Quartalswerte in echte Datumswerte umwandelt.

  • Falsche Spaltenreferenz: Achte darauf, dass die Spalte, in der die Daten stehen (im Code Cells(c, 1)), tatsächlich die Spalte ist, die du analysieren möchtest. Ändere die 1 zu der entsprechenden Spaltennummer.


Alternative Methoden

Wenn du keine VBA-Lösung verwenden möchtest, kannst du auch Filter oder bedingte Formatierung nutzen:

  1. AutoFilter: Wähle die gesamte Tabelle aus, gehe zu Daten > Filter und setze einen Filter auf die Datumsspalte, um nur die aktuellen Monate anzuzeigen.

  2. Bedingte Formatierung: Markiere die Datumsspalte, gehe zu Start > Bedingte Formatierung > Neue Regel und erstelle eine Regel, die die Zeilen mit einem Datum älter als der aktuelle Monat hervorhebt oder ausblendet.


Praktische Beispiele

Angenommen, du hast folgende Daten in der Spalte A:

01.01.2023
15.02.2023
Q1
31.12.2022

Nach dem Ausführen des Makros werden nur die Zeilen mit den Daten 15.02.2023 und Q1 sichtbar sein, während die anderen ausgeblendet werden, da sie entweder im Vormonat liegen oder nicht als gültiges Datum erkannt werden.


Tipps für Profis

  • Makros speichern: Stelle sicher, dass du die Excel-Datei als .xlsm speicherst, um das Makro zu behalten.

  • Fehlerbehandlung: Füge Fehlerbehandlungsroutinen in dein VBA ein, um sicherzustellen, dass dein Makro nicht abstürzt, wenn es auf unerwartete Werte stößt.

  • Dynamische Bereiche: Überlege, ob du dynamische Bereiche verwenden möchtest, um sicherzustellen, dass dein Code auch mit sich ändernden Daten funktioniert.


FAQ: Häufige Fragen

1. Wie kann ich die Zeilen wieder einblenden? Um die ausgeblendeten Zeilen wieder sichtbar zu machen, kannst du entweder das Makro anpassen oder die ausgeblendeten Zeilen manuell markieren und mit der rechten Maustaste auf Einblenden klicken.

2. Funktioniert das auch in Excel Online? Leider sind VBA-Makros nicht in Excel Online verfügbar. Du musst die Desktop-Version von Excel verwenden, um dieses Makro auszuführen.

3. Kann ich das Makro anpassen, um nur bestimmte Zeilen auszublenden? Ja, du kannst die Bedingungen im Code anpassen, um spezifische Kriterien festzulegen, nach denen Zeilen ausgeblendet werden sollen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige