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

Forumthread: Leere Zeilen beim Drucken ausblenden

Leere Zeilen beim Drucken ausblenden
19.11.2015 06:56:49
Dirk
Hallo zusammen.
Anbei eine Excel Datei.
https://www.herber.de/bbs/user/101636.xlsm
Wenn ich auf den Button "Drucken" klicke möchte ich, dass alle Zeilen (von Zeile 5-50) ausgeblendet werden, die in der Spalte "Termin" keinen Eintrag haben und die Druckvorschau erscheint, in der ich dann einen Drucker auswählen kann.
Nach dem Drucken sollen dann wieder alle Zeilen eingeblendet werden.
Ich habe es schon mit verschiedenen VBA Codes hier aus dem Formun versucht aber leider werden die Zeilen nicht ausgeblendet :-(
Vielen Dank!!

Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
einfach Filtern
19.11.2015 07:36:03
Matthias
Hallo
aber leider werden die Zeilen nicht ausgeblendet
Weise mal dieses Makro Deinem Druckbutton zu
Option Explicit
Sub Filtern()
With Range("A4:G4")
.AutoFilter
.AutoFilter Field:=1, Criteria1:=""
MsgBox "jetzt drucken"
.AutoFilter Field:=1
End With
End Sub
schöner Kalender übrigens :-)
Gruß Matthias

Anzeige
AW: einfach Filtern
19.11.2015 08:00:45
Dirk
Hallo Matthias.
Manche Dinge macht man sich kompliziert, können aber so einfach sein :-)
Danke!!!!
Gruß
Dirk

eine Frage an Dich wg. Kalender
19.11.2015 08:15:02
Matthias
Hallo
Danke erstmal für die Rückmeldung!
Meine Frage:
Wie/Wo machst Du das, das man mit den Cursor-Tasten über die Tage gleiten kannst
und dann der Tag der aktiviert ist den Focus erhält?
Ich würde das gerne auch für meine eigenen Kalender so umsetzen.
Deinen Kalender aus der Datei darf man benutzen?
Gruß Matthias

Anzeige
AW: eine Frage an Dich wg. Kalender
19.11.2015 08:28:03
Dirk
Hallo.
Klar kannst du den Kalender benutzen :-)
Mit dem Focus funktioniert über diesen Abschnitt:
Private Sub Build_Calendar()
'the routine that actually builds the calendar each time
If CreateCal = True Then
CalendarFrm.Caption = " " & CB_Mth.Value & " " & CB_Yr.Value
'sets the focus for the todays date button
CommandButton1.SetFocus
For i = 1 To 42
If i Controls("D" & (i)).Caption = Format(DateAdd("d", (i - Weekday((CB_Mth.Value) & "/1/" & (CB_Yr.Value))), _
((CB_Mth.Value) & "/1/" & (CB_Yr.Value))), "d")
Controls("D" & (i)).ControlTipText = Format(DateAdd("d", (i - Weekday((CB_Mth.Value) & "/1/" & (CB_Yr.Value))), _
((CB_Mth.Value) & "/1/" & (CB_Yr.Value))), dtFormat)
ElseIf i >= Weekday((CB_Mth.Value) & "/1/" & (CB_Yr.Value)) Then
Controls("D" & (i)).Caption = Format(DateAdd("d", (i - Weekday((CB_Mth.Value) _
& "/1/" & (CB_Yr.Value))), ((CB_Mth.Value) & "/1/" & (CB_Yr.Value))), "d")
Controls("D" & (i)).ControlTipText = Format(DateAdd("d", (i - Weekday((CB_Mth.Value) & "/1/" & (CB_Yr.Value))), _
((CB_Mth.Value) & "/1/" & (CB_Yr.Value))), dtFormat)
End If
If Format(DateAdd("d", (i - Weekday((CB_Mth.Value) & "/1/" & (CB_Yr.Value))), _
((CB_Mth.Value) & "/1/" & (CB_Yr.Value))), "mmmm") = ((CB_Mth.Value)) Then
If Controls("D" & (i)).BackColor &H80000016 Then Controls("D" & (i)).BackColor = &H80000018 '&H80000010
Controls("D" & (i)).Font.Bold = True
If Format(DateAdd("d", (i - Weekday((CB_Mth.Value) & "/1/" & (CB_Yr.Value))), _
((CB_Mth.Value) & "/1/" & (CB_Yr.Value))), dtFormat) = Format(ThisDay, dtFormat) Then Controls("D" & (i)).SetFocus
Else
If Controls("D" & (i)).BackColor &H80000016 Then Controls("D" & (i)).BackColor = &H8000000F
Controls("D" & (i)).Font.Bold = False
End If
''Debug.Print i & " - " & Controls("D" & (i)).ControlTipText
Next
End If

Anzeige
Kalender - Labelfocus
19.11.2015 09:05:20
Matthias
Hallo
Danke! erstmal für die Erlaubnis Deinen Kalender benutzen zu dürfen :-)
Mit dem Focus funktioniert über diesen Abschnitt:
Private Sub Build_Calendar()
Das kann es aber nicht sein!
Ich habe alles der Reihe nach auskommentiert und immer wieder neu getestet
Auch wenn die Labels leer sind (da auskommentiert) kann ich mit den Pfeiltasten den Curor über den Kalender bewegen und das jeweilige Label bekommt den Focus.
Ich habe am Ende nur die Deklaration stehen lassen.
Bin etwas ratlos
Gibts da nicht doch evtl. in den Eigenschaften irgend eine Einstellung die ich übersehe?
Gibt es evtl in den Eigenschaften der Label Unterschiede zwischen 2010 und 2007
Meine höchste Version ist 2007
Gruß Matthias

Anzeige
AW: Kalender - Labelfocus
19.11.2015 09:17:14
Dirk
Hallo.
Leider fällt mir auch nichts neues dazu ein wieso... :-(
Sorry

AW: Kalender - Labelfocus
19.11.2015 09:28:26
Matthias
Hallo Dirk Ehrhardt
Danke für Deine Rückmeldungen
und den Kalender :o)
Ich werde in der Datei einen Link zum Beitrag setzen.
Gruß Matthias

Das sind keine Labels, sonder Buttons
19.11.2015 09:37:49
EtoPHG
Matthias,
Bei Labels funktioniert die Cursor-Bewegung auf einer UF nicht.
Da bei Dirk's Kalender die Tage aber als CommandButtons definiert sind, funktioniert die Cursor-Steuerung!
Gruess Hansueli

Anzeige
Kann nicht wahr sein, wie peinlich ... ;-)
19.11.2015 09:57:47
Matthias
Hallo Hansueli
Ich danke Dir!
Da ich immer mit Labels in meinen Kalendern arbeite, hab ich überhaupt nicht mehr nachgeschaut.
Jetzt sitz ich vorm Rechner und lache über mich selbst :-)
Danke!!
Gruß Matthias

AW: Kalender
19.11.2015 10:48:10
Werner
Hallo Dirk,
das ist ja mal richtig gut, bekommt bei mir auch einen Platz im Archiv.
Gruß Werner
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Leere Zeilen beim Drucken ausblenden in Excel


Schritt-für-Schritt-Anleitung

Um leere Zeilen beim Drucken in Excel auszublenden, kannst Du die folgende Schritt-für-Schritt-Anleitung befolgen:

  1. Öffne Deine Excel-Datei.

  2. Gehe zur Registerkarte "Entwicklertools". Falls diese nicht sichtbar ist, aktiviere sie in den Excel-Optionen.

  3. Erstelle einen Button. Ziehe einen Button auf das Arbeitsblatt, um ihn zu platzieren.

  4. Weise dem Button ein Makro zu. Klicke mit der rechten Maustaste auf den Button und wähle "Makro zuweisen".

  5. Füge den folgenden VBA-Code in das Makro ein:

    Sub LeereZeilenAusblenden()
       Dim rng As Range
       Dim cell As Range
    
       ' Definiere den Bereich, der überprüft werden soll (z.B. A5:A50)
       Set rng = Range("A5:A50")
    
       ' Überprüfe jede Zelle im Bereich
       For Each cell In rng
           If cell.Value = "" Then
               cell.EntireRow.Hidden = True ' Zeile ausblenden
           End If
       Next cell
    
       ' Druckvorschau anzeigen
       ActiveSheet.PrintPreview
    
       ' Nach dem Drucken alle Zeilen wieder einblenden
       For Each cell In rng
           cell.EntireRow.Hidden = False ' Zeile einblenden
       Next cell
    End Sub
  6. Klicke auf den Button, um den Druckvorgang zu starten. Die leeren Zeilen werden ausgeblendet, und die Druckvorschau erscheint.


Häufige Fehler und Lösungen

  • Problem: Der Drucker druckt manche Zeilen nicht.

    • Lösung: Überprüfe die Druckeinstellungen und stelle sicher, dass der gesamte Bereich ausgewählt ist.
  • Problem: Excel zeigt die leeren Zeilen nicht in der Druckvorschau aus.

    • Lösung: Stelle sicher, dass der VBA-Code korrekt eingegeben wurde und dass Du den richtigen Bereich ausgewählt hast.

Alternative Methoden

Es gibt verschiedene Möglichkeiten, leere Zeilen in Excel auszublenden:

  1. Filter verwenden:

    • Wähle den Datenbereich aus und gehe zu "Daten" > "Filter". Setze den Filter auf die Spalte, die leere Zeilen enthält.
  2. Formatierung nutzen:

    • Du kannst auch die bedingte Formatierung verwenden, um leere Zeilen farblich hervorzuheben und manuell auszublenden.

Praktische Beispiele

  • Beispiel 1: Eine Tabelle mit Terminen, in der Du alle leeren Zeilen in der Spalte "Termin" ausblenden möchtest. Nutze den oben genannten VBA-Code und passe den Bereich entsprechend an.

  • Beispiel 2: Wenn Du eine leere Tabelle drucken möchtest, stelle sicher, dass Du alle leeren Zeilen ausblendest, um die Lesbarkeit zu verbessern.


Tipps für Profis

  • VBA-Optimierung: Du kannst den VBA-Code weiter optimieren, um nur die sichtbaren Zeilen zu drucken und die Druckzeit zu verkürzen.

  • Seitenränder anpassen: Vergiss nicht, die Seitenränder in den Druckeinstellungen anzupassen, um das Layout Deiner Tabelle zu optimieren.


FAQ: Häufige Fragen

1. Wie kann ich alle leeren Zeilen in Excel ausblenden?
Du kannst den oben angegebenen VBA-Code verwenden, um alle leeren Zeilen innerhalb eines bestimmten Bereichs auszublenden.

2. Was tun, wenn die Druckvorschau leere Zeilen anzeigt?
Überprüfe, ob der VBA-Code richtig implementiert ist und ob Du den richtigen Bereich ausgewählt hast.

3. Gibt es eine Excel-Formel, um leere Zeilen auszublenden?
Es gibt keine direkte Formel, aber Du kannst Filter oder VBA verwenden, um das gewünschte Ergebnis zu erzielen.

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