Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

29 Februar , Eine Zeile ausblenden

Forumthread: 29 Februar , Eine Zeile ausblenden

29 Februar , Eine Zeile ausblenden
08.10.2003 10:43:37
Robert Nägele
Hi,

Ich habe in einer Arbeitsmappe nun 12 Seiten angelegt plus eine Übersicht.
In jeder Zeile auf einem der 12 Blätter steht jeweils ein Datum.
Ich habe es bereits hinbekommen das je nachdem welches Jahr man in der Übersicht angibt die Samstage und Sonntage eingefärbt sind etc.

Mein Problem ist nun nur wie ich es hinbekommen soll das auf dem 2. Blatt mit Namen "Feb" die Zeile 31 ausgeblendet wird wenn das Jahr in der Zelle "Übersicht!A2" im Format ( JJJJ ) ein Schaltjahr zeigt ?

Weiß da jemand eine elegante Methode ?
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wochenenden einfärben
08.10.2003 11:02:14
Galenzo
Hallo,

zum 1. Teil deiner Frage.
Die Wochenenden lassen sich recht einfach mittels "Bedingter Formatierung" einfärben.
Gehe dazu in die Zelle, in der das erste Datum steht (hier z.B. A1)
Im Menü wählst du: "Format/Bedingte Formatierung" - es öffnet sich das entsprechende Fenster für die bedingte Formatierung. Hier gibst du unter "Bedingung1" dieses ein:
"Formel ist:" und dann diese Formel: =WOCHENTAG(A1;2)>5
Mit dem Button "Format" kannst du dann eine Farbe oder Schriftart usw. einstellen, mit der diese Tage dann markiert werden. Dann kannst du dieses Fenster schliessen.
Nun mußt du nur noch mit "Formate übertragen" diese Formatierung auf die restlichen Zellen der Spalte übertragen - bzw. auch für deine anderen Tabellenblätter.

Viel Erfolg!
Anzeige
AW: Wochenenden einfärben
08.10.2003 11:06:08
Robert Nägele
Hi,

Das habe ich tatsächlich bereits hinbekommen wie auch in der Frage geschrieben,
es geht mir ausschließlich um die Ausblendung des 29.Februars :) Sorry habs vielleicht
bissl umständlich geschrieben. Danke trotzdem
AW: Wochenenden einfärben
08.10.2003 11:19:13
Galenzo
Ohne VB kannst du die komplette Zeile nicht löschen.
Ich hätte da eine Funktion, um die Ausgabe des 29. in der Datumsspalte zu unterdrücken.
Ich gehe hier davon aus, daß in der Zelle B28 steht: 28.01.2003 oder 28.01.2000 oder so.
Wenn du in die Zelle B29 diese Funktion
=WENN(MONAT(A28+1)=2;A28+1;"")
einträgst, wird die Ausgabe eines 29. in den Schaltjaher verhindert.
(Zur Erläuterung: Es wird geprüft, ob der Monat des Folgetages auch noch Februar ist oder nicht; und entsprechend der 29. geschrieben oder eben nix)

Ich hoffe das hilft dir erstmal weiter.
Wenn nicht, wäre es hilfreich, wenn du mal erläutern würdest, wie deine Datumswerte aussehen, wo du den Monat und das Jahr herbekommst.
Anzeige
AW: 29 Februar , Eine Zeile ausblenden
08.10.2003 11:07:42
Hajo_Zi
Hallo Robert

leider hast Du nichts dazu geschrieben wie Du den nächsten Tag ermittelst. Schaue mal auf meine Homepage ohne VBA doert ist ein Beispiel für einen Kalender.

Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.

http://home.media-n.de/ziplies/

Anzeige
AW: 29 Februar , Eine Zeile ausblenden
08.10.2003 12:05:58
WernerB.
Hallo Robert,

das navchstehende Makro gehört in das Tabellenblat-Modul des Blattes "Feb":

Option Explicit

Private Sub Worksheet_Activate()
Dim DDa2 As Date
Dim IJa2 As Integer
Application.ScreenUpdating = False
If Not IsNumeric(Sheets("Übersicht").Range("A2").Value) Then Exit Sub
If Len(Sheets("Übersicht").Range("A2").Text) <> 4 Then Exit Sub
IJa2 = CInt(Sheets("Übersicht").Range("A2").Text)
DDa2 = CDate("01.03." & IJa2)
DDa2 = CDate("01.03." & IJa2)
DDa2 = DDa2 - 1
Select Case Day(DDa2)
Case 29
Rows("31:31").EntireRow.Hidden = True
Case Else
Rows("31:31").EntireRow.Hidden = False
End Select
Application.ScreenUpdating = True
End Sub

Viel Erfolg wünscht
WernerB.

P.S.: Das Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter (siehe Forums-FAQ).
Anzeige
Danke an alle, funktioniert wie es soll (OT)
08.10.2003 12:47:12
Robert Nägele
Thx :)
Anzeige

Infobox / Tutorial

Zeile im Excel am 29. Februar ausblenden


Schritt-für-Schritt-Anleitung

Um die Zeile für den 29. Februar in Excel auszublenden, kannst Du die folgende Methode benutzen. Diese Anleitung geht davon aus, dass Du Excel in einer Version verwendest, die VBA unterstützt.

  1. Öffne Deine Arbeitsmappe und gehe zu dem Blatt mit dem Namen "Feb".

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Finde das Tabellenblatt "Feb" im Projekt-Explorer auf der linken Seite.

  4. Doppelklicke auf "Feb", um das Codefenster zu öffnen.

  5. Füge den folgenden Code ein:

    Option Explicit
    
    Private Sub Worksheet_Activate()
        Dim DDa2 As Date
        Dim IJa2 As Integer
        Application.ScreenUpdating = False
        If Not IsNumeric(Sheets("Übersicht").Range("A2").Value) Then Exit Sub
        If Len(Sheets("Übersicht").Range("A2").Text) <> 4 Then Exit Sub
        IJa2 = CInt(Sheets("Übersicht").Range("A2").Text)
        DDa2 = CDate("01.03." & IJa2)
        DDa2 = DDa2 - 1
        Select Case Day(DDa2)
            Case 29
                Rows("31:31").EntireRow.Hidden = True
            Case Else
                Rows("31:31").EntireRow.Hidden = False
        End Select
        Application.ScreenUpdating = True
    End Sub
  6. Schließe den VBA-Editor und kehre zu Excel zurück.

  7. Aktiviere das Blatt "Feb" erneut, indem Du es auswählst. Die Zeile 31 wird automatisch ausgeblendet, wenn das Jahr in "Übersicht!A2" ein Schaltjahr ist.


Häufige Fehler und Lösungen

  • Fehler: Zeile wird nicht ausgeblendet

    • Lösung: Stelle sicher, dass in der Zelle "Übersicht!A2" ein gültiges Jahr (im Format JJJJ) steht.
  • Fehler: Makro funktioniert nicht

    • Lösung: Überprüfe, ob Makros in Deinen Excel-Optionen aktiviert sind. Manchmal ist die Sicherheitseinstellung so hoch, dass Makros blockiert werden.

Alternative Methoden

Wenn Du VBA nicht verwenden möchtest, kannst Du auch die Bedingte Formatierung nutzen, um den 29. Februar in der Zelle zu unterdrücken oder ihn nicht anzuzeigen. Verwende folgende Formel in der Zelle, wo das Datum steht:

=WENN(MONAT(A28+1)=2;A28+1;"")

Diese Formel sorgt dafür, dass der 29. Februar nicht angezeigt wird, wenn der vorherige Tag (28. Februar) nicht in einem Schaltjahr ist.


Praktische Beispiele

Angenommen, Du hast in Zelle "Übersicht!A2" das Jahr 2024 eingegeben:

  • Bei Verwendung des VBA-Codes wird die Zeile 31 im Februar-Blatt ausgeblendet.
  • Bei der Anwendung der Formel in Zelle B29 wird einfach nichts angezeigt, wenn es kein Schaltjahr ist.

Tipps für Profis

  • Überlege, die Umbruchvorschau in Excel auszublenden, um die Übersichtlichkeit zu erhöhen, während Du an Deinem Kalender arbeitest.
  • Berücksichtige bei der Planung von Daten, dass der Excel-Kalender Schaltjahre korrekt handhabt. Dies kann auch bei der Analyse von Daten nützlich sein.
  • Bedingte Formatierungen sind besonders hilfreich, um Wochenenden oder spezielle Tage wie den 29. Februar hervorzuheben oder auszublenden.

FAQ: Häufige Fragen

1. Wie kann ich das Makro anpassen, um andere Zeilen auszublenden? Du kannst die Zeilenangabe in der Zeile Rows("31:31").EntireRow.Hidden = True ändern, um eine andere Zeile auszublenden.

2. Funktioniert das nur in bestimmten Excel-Versionen? Ja, diese Methoden funktionieren in Versionen, die VBA unterstützen, z.B. Excel 2010, 2013, 2016 und neuer.

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