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

Forumthread: Druckbereich dynamisch festlegen

Druckbereich dynamisch festlegen
19.04.2015 10:05:47
Paul
Hallo,
ich habe Schwierigkeiten den Druckbereich meiner Tabelle dynamisch festzulegen. Ich habe eine Möglichkeit gefunden dies über den Namensmanager zu tun, allerdings kann ich den Druckbereich dann einmal dynamisch anpassen, danach bezieht der Name sich wieder auf den Bereich und nicht auf die Zelle die aussagt was er drucken soll.
Also die Formel für den Namen "Druckbereich" ist =INDIREKT(Woche 1!$DY$3), der Wert ist dynamisch. Wenn sich der Wert einmal geändert hat überschreibt Excel die Formel unter "Druckbereich" und es steht nur noch der Bereich drin, ist also nicht mehr dynamisch.
Kann ich das vielleicht zuverlässiger über VBA machen? Also "Nimm als Druckbereich für Tabelle X den Wert aus aus Zelle TabelleX!A1, für Tabelle XY den Wert aus TabelleXY!A1 usw.?
Danke für eure Hilfe!
Paul.

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Druckbereich dynamisch festlegen
19.04.2015 15:19:01
Michael
Hallo Paul,
mit dem folgenden Makro in Modul (Aufrufen mit Strg-Umschalt-D:
Option Explicit
Sub druckbereiche()
Dim BlattNr As Long
For BlattNr = 1 To Sheets.Count
With Sheets(BlattNr)
.PageSetup.PrintArea = .Range("A1")
' z.B. $B$2:$D$19 siehe auch Dialog
' Seite einrichten, Register Tabelle
' wenn leer, wird der Druckbereich aufgehoben
End With
Next
End Sub
Datei anbei: https://www.herber.de/bbs/user/97156.xls
Happy Exceling,
Michael
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Dynamischen Druckbereich in Excel festlegen


Schritt-für-Schritt-Anleitung

Um einen dynamischen Druckbereich in Excel festzulegen, kannst Du den Excel Namensmanager nutzen oder VBA verwenden. Hier ist eine Schritt-für-Schritt-Anleitung für beide Methoden:

Methode 1: Namensmanager

  1. Öffne Deine Excel-Datei und gehe zum Reiter "Formeln".
  2. Klicke auf "Namensmanager".
  3. Wähle "Neu" aus.
  4. Gib dem Namen (z.B. "Druckbereich") einen Namen.
  5. In das Feld "Bezieht sich auf" gib die Formel ein, die auf die dynamische Zelle verweist, z.B. =INDIREKT(Woche 1!$DY$3).
  6. Klicke auf "OK" und schließe den Namensmanager.
  7. Wähle die Registerkarte "Seitenlayout" und gehe zu "Druckbereich" -> "Druckbereich festlegen" und wähle den Namen aus.

Methode 2: VBA

  1. Drücke Strg + Alt + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf "Einfügen" und dann auf "Modul".

  3. Füge den folgenden VBA-Code ein:

    Option Explicit
    Sub druckbereiche()
       Dim BlattNr As Long
       For BlattNr = 1 To Sheets.Count
           With Sheets(BlattNr)
               .PageSetup.PrintArea = .Range("A1") ' Hier kannst Du den dynamischen Bereich anpassen
           End With
       Next
    End Sub
  4. Schließe den VBA-Editor und führe das Makro mit Strg + Umschalt + D aus.


Häufige Fehler und Lösungen

  • Fehler: Der Druckbereich wird nicht dynamisch aktualisiert.

    • Lösung: Stelle sicher, dass die Zelle, die Du im Namensmanager verwendest, tatsächlich den richtigen Wert enthält.
  • Fehler: VBA-Code funktioniert nicht wie gewünscht.

    • Lösung: Überprüfe, ob Du die richtigen Zellreferenzen im VBA-Code angegeben hast. Möglicherweise musst Du den Bereich anpassen.

Alternative Methoden

Einige Benutzer haben Erfolg mit anderen Methoden zur Festlegung eines dynamischen Druckbereichs in Excel. Hier sind zwei Alternativen:

  1. Tabelle nutzen: Wandle Deinen Bereich in eine Excel-Tabelle um (Registerkarte "Einfügen" -> "Tabelle"). Excel passt den Druckbereich automatisch an, wenn Du neue Daten hinzufügst.

  2. Dynamische Arrays: In neueren Excel-Versionen (365) kannst Du die Funktionen FILTER oder SORTIEREN nutzen, um dynamische Bereiche zu erstellen, die dann als Druckbereich verwendet werden können.


Praktische Beispiele

  • Beispiel 1: Du hast eine Tabelle mit Verkaufsdaten. Der Druckbereich soll sich automatisch anpassen, wenn neue Daten hinzugefügt werden. Nutze den Namensmanager mit der Formel =Tabelle1!$A$1:$D$100, wobei die Zeilenanzahl anpasst.

  • Beispiel 2: Mit dem VBA-Skript kannst Du festlegen, dass der Druckbereich für alle Tabellen in Deiner Arbeitsmappe gleich bleibt. Passe die .Range("A1") entsprechend an, um den gewünschten Bereich zu definieren.


Tipps für Profis

  • Nutze benannte Bereiche im Namensmanager, um die Übersichtlichkeit zu verbessern und Fehler zu vermeiden.
  • Überlege, ob Du Ereignis-gesteuerten VBA-Code verwenden möchtest, um den Druckbereich bei bestimmten Aktionen (z.B. beim Öffnen der Datei) automatisch festzulegen.
  • Halte Deine Excel-Version immer aktuell, um von den neuesten Funktionen zur dynamischen Anpassung des Druckbereichs zu profitieren.

FAQ: Häufige Fragen

1. Wie kann ich den Druckbereich in Excel automatisch anpassen?
Nutze die Tabelle-Funktion oder den Namensmanager mit dynamischen Formeln, um den Druckbereich automatisch anzupassen.

2. Kann ich den dynamischen Druckbereich auch über VBA festlegen?
Ja, Du kannst mit einem VBA-Skript den Druckbereich für mehrere Blätter dynamisch festlegen, wie im oben beschriebenen Beispiel.

3. Welche Excel-Version benötige ich, um den Namensmanager nutzen zu können?
Der Namensmanager ist in Excel 2007 und späteren Versionen verfügbar.

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