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

Forumthread: dyn. Druckbereich aus mehreren Bereichen

dyn. Druckbereich aus mehreren Bereichen
18.05.2022 17:06:06
Rosenmontagskind
Hallo zusammen,
ich habe durch google-Suche schon so viel aus diesem Forum gelernt und im privaten und beruflichen Kontext erfolgreich einsetzen können. Aber jetzt komme ich nicht mehr weiter und brauche Eure Hilfe für mein Problem.
Ich bin dabei eine Abrechnungstabelle zu erstellen, auf der in einem Tabellenblatt Daten eingegeben werden und diese von Excel dann in ein (ziemlich anders aussehendes) Layout zum Drucken gebracht werden. Die Aufbereitung der Daten in das gewünschte Layout habe ich schon hinbekommen. Jetzt geht es aber um den Druckbereich. Alles was auszudrucken ist, befindet sich auf dem Tabellenblatt "Druck". Dort habe ich verschiedene Bereich definiert, die jeweils genau dem entsprechen, was auf eine A4-Seite gedruckt werden soll.
Seite1 =Druck!$A$1:$E$41
Seite2 =Druck!$F$1:$J$41
Seite3 =Druck!$A$42:$E$82
Seite4 =Druck!$F$42:$J$82
Seite1 soll immer gedruckt werden, die anderen Seiten je nachdem, was da drauf ist. Es könnte also auch Seite 1 und 4 sein, was definitiv kein zusammenhängender Bereich ist. Die Informationen, um das zu entscheiden haben ich auf auf einem separaten Blatt "Drucksteuerung" zusammengestellt. Meine Idee war jetzt mir auf dem Blatt Drucksteuerung in Zelle C1 eine Formel zu basteln, die mir die Druckbereiche als String ausgibt und dann im Namensmanager den "Druckbereich" vom Tabellenbaltt Druck auf folgendes zu setzen:

=INDIREKT(Drucksteuerung!$C$1)
Oder muss es so heißen? :

=INDIREKT("Drucksteuerung!$C$1")
Nun meine Frage: wie müsste der String genau aussehen, den die Formel in Drucksteuerung!A2 liefert?
Bisher habe ich folgendes ausprobiert:

Seite1;Seite4

Druck!$A$1:$E$41;Druck!$F$42:$J$82

Die Namen für die definierten Bereiche scheinen mich bisher gar nicht weiterzubringen. Solange A2 nur die Angabe für einen Bereich enthält, klappt es. Aber ich komme nicht drauf, wie ich mehrere Bereiche eingeben muss. Fehlen da noch =, ', " oder ähnliches? Wenn ich

=Druck!$A$1:$E$41;Druck!$F$42:$J$82
im Namensmanger eingebe, funktioniert es, wobei es dann natürlich nicht dynamisch ist. Also liegt es nicht dran, dass Excel ein Problem mit dem Druckbereich aus getrennten Teilbereichen hat.
Oder muss ich das ganz anders angehen oder geht das gar nicht?
Kann mir da jemand helfen?
PS: Ich weiß, dass das mit dem dynamischen Druckbereich über den Namensmanager nicht die ideale Lösung ist, weil sie manuell überschrieben werden kann. Ich würde aber hoffen, dass diese Lösung (wenn sie denn überhaupt funktioniert) auch im Excel-Online gehen würde, was eine VBA-Lösung ja nicht tut, soweit ich weiß.
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: dyn. Druckbereich aus mehreren Bereichen
18.05.2022 17:27:57
onur
Gehe auf Seite "Druck!", neuen Namen "Druckbereich" definieren (ggf alten Bereich löschen), Bereich TABELLE "Druck!"- nicht Arbeitsmappe.
Bezieht sich auf:

=Druck!$A$1:$E$41;$F$1:$J$41;$A$42:$E$82;$F$42:$J$82
Fertig!
AW: dyn. Druckbereich aus mehreren Bereichen
18.05.2022 23:14:47
Rosenmontagskind
Danke für deine Antwort. Den Druckbereich hab ich schon x-mal neu angelegt. Sowohl direkt im Namensmanager mit Bezug auf das Tabellenblatt Druck und nicht Arbeitsmappe, als auch über Druckbereich festlegen. Dein Lösung ergibt bei mir nur einen fixen Druckbereich für die Seiten 1-4.
Mein Ziel ist aber ein dynamischer Druckbereich, abhängig vom Inhalt der Seiten. Dazu habe ich mich an dieser Anleitung orientiert:
https://www.excel-inside.de/beispiele_vba/152-druckbereich-dynamisch-ohne-vba-festlegen
Bei mir heißt es im Namensmanager :
Name: Druckbereich
Bereich: Druck
Bezieht sich auf: =INDIREKT(Drucksteuerung!$C$1)
liefert die Formel in Drucksteuerung!C1 jetzt das Ergebnis: Druck!$A$1:$E$41; wird nur Seite 1 gedruckt, wie ich es möchte.
liefert die Formel allerdings ein Ergebnis aus zwei Bereichen z.B.: Druck!$A$1:$E$41;$F$42:$J$82 wird kein Druckbereich ausgewählt und er druckt alles.(Die Schreibweise Druck! nur einmal davor und dann die Bereiche mit Semikolon getrennt, habe ich jetzt neu bei dir abgeschaut, hat aber leider auch nicht geholfen).
Wieso funktioniert das mit mehreren Bereichen nicht, wo ist da der Fehler?
Anzeige
AW: dyn. Druckbereich aus mehreren Bereichen
19.05.2022 08:22:38
Luschi
Hallo Rosenmontagskind,
bei mir klappt das so wie im angefügten Beispiel, weitere Erklärungen findest Du in der Datei.
https://www.herber.de/bbs/user/153139.xlsx
Gruß von Luschi
aus klein-Paris
AW: dyn. Druckbereich aus mehreren Bereichen
19.05.2022 09:05:17
Rosenmontagskind
Danke für deine Antwort.
Scheinbar bin ich nicht in der Lage mein Problem so zu beschreiben, dass Ihr es versteht. Tut mir leid! ich versuche es nochmal zu konkretisieren. Vielleicht ist auch meine Bezeichnung "dynamischer Druckbereich" irreführend.
Die Teilbereiche, die jeweils auf eine A4 Seite gedruckt werden sollen sind fix. Ein Teilbereich verändert sich nicht in der Länge oder Breite, wenn dort mehr oder weniger Daten stehen.
Das dynamische daran soll sein, ob ein Teilbereich überhaupt gedruckt wird oder nicht.
Ob der Druckbereich also nur Seite 1 oder Seite 1 & 2 & 3 oder nur Seite 1 &4 ist... soll durch eine Formel veränderbar sein.
Daher mein Versuch über INDIREKT auf 1 Zelle, in der dann die Angabe des in dem Fall gewünschten ganzen Druckbereiches steht (was dann aber eben auch die Angabe mehrerer unabhängiger Teilbereich sein kann).
Das Problem: ein String, der zwei Teilbereiche angibt. Z.B. Druck!$A$1:$E$41;$F$42:$J$82 funktioniert, wenn ich ihn direkt im Namensmanager bei "bezieht sich auf" eingebe. Versuche ich den selben String in eine Zelle zu schreiben und über INDIREKT den Druckbereich zu setzen, klappt es nicht.
Ich hatte auch schon überlegt pro "potenziell gedruckter Seite" ein INDIREKT zu benutzen, das dann ggf. einen leeren Bereich zurückgibt, wenn die Seite nicht gedruckt werden soll. Aber da bin ich auch nicht hingekommen eine Syntax zu finden, die im Namensmanger bei "Bezieht sich auf" dann funktioniert.
Die Idee nochmal etwas ausgeführt:
Im Namensmanager bei bezieht sich auf dann sowas in der Art:
=INDIREKT(Drucksteuerung!A1)&;"&INDIREKT(Drucksteuerung!A2)&;"&INDIREKT(Drucksteuerung!A3)&; "&INDIREKT(Drucksteuerung!A4)
und auf Blatt Drucksteuerung steht dann als Ergebnis einer Formel
A1= Druck!$A$1:$E$41 (da Seite 1 immer gedruckt werden soll)
A2= Druck!$F$1:$J$41 oder ""
A3= Druck!$A$42:$E$82 oder ""
A4= Druck!$F$42:$J$82 oder ""
Aber da scheint an der Syntax auch irgendwas ganz falsch zu sein. Selbst mit zwei Bereichen, die beide richtig angegeben sind funktioniert es nicht.
Meine Vermutung: Der Namensmanager will einen echten Bezug für einen Bereich und keinen String in "Bezieht sich auf". Und ich vermute, dass das was INDIREKT ausgibt, wenn in der Zelle mehrere Teilbereich stehen nicht mehr als "richtiger" Bereich erkannt wird. Und mein Konstrukt mit den & ist dann eben auch ein String und kein echter Bezug für einen Bereich.
Ich hoffe es ist jetzt verständlicher und jemand kann mir helfen?
Anzeige
AW: dyn. Druckbereich aus mehreren Bereichen
22.05.2022 01:22:43
Peter
Hallo Rosenmontagskind,
wenn ich das richtig verstanden habe, soll von dem Blatt "Druck" der 1. Teil immer gedruckt werden; die Teile 2 bis 4 nur dann, wenn diese relevante Daten beinhalten (praktisch bei ausgefülltem Formular). Dazu müsste man wissen, in welchen Zellen mindestens Eingaben stehen sollen, damit ein Druck der Teile 2 bis 4 ausgelöst wird. Und natürlich wäre eine Musterdatei - mindestens mit dem Arbeitsblatt "Druck" - erforderlich. Anhand der genannten Angaben könnte man dann ein Arbeitsblatt mittels Makro erstellen, welches den tatsächlichen Druck - so wie gewünscht - beinhaltet.
Ich würde das gern mal für Dich konstruieren, jedoch die Zeit wird knapp, da Dein Thread wahrscheinlich am 25. 5. oder 26. 5. 22 gelöscht wird. Gegebenenfalls muss ein neuer Thread angelegt werden.
Mit freundlichem Gruß
Peter Kloßek
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Dynamischer Druckbereich in Excel: Schritt-für-Schritt-Anleitung


Schritt-für-Schritt-Anleitung

Um einen dynamischen Druckbereich in Excel einzurichten, befolge die folgenden Schritte:

  1. Datenblatt erstellen: Erstelle ein Arbeitsblatt namens "Druck", auf dem du die Daten eingibst, die du drucken möchtest.

  2. Bereiche definieren: Lege die Bereiche fest, die du drucken möchtest. Zum Beispiel:

    • Seite1: =Druck!$A$1:$E$41
    • Seite2: =Druck!$F$1:$J$41
    • Seite3: =Druck!$A$42:$E$82
    • Seite4: =Druck!$F$42:$J$82
  3. Drucksteuerung einrichten: Erstelle ein Blatt namens "Drucksteuerung", wo du die Bedingungen für den Druckbereich festlegst.

  4. Formel erstellen: In Zelle C1 von "Drucksteuerung" gib die Dynamik für deinen Druckbereich ein, z.B.:

    Druck!$A$1:$E$41;Druck!$F$1:$J$41
  5. Namensmanager verwenden: Gehe zu "Formeln" > "Namensmanager" und erstelle einen neuen Namen, z.B. "Druckbereich". Setze die Formel auf:

    =INDIREKT(Drucksteuerung!$C$1)
  6. Druckbereich festlegen: Gehe auf das Blatt "Druck" und lege den Druckbereich fest, indem du "Seitenlayout" > "Druckbereich festlegen" wählst und "Druckbereich" eingibst.


Häufige Fehler und Lösungen

  • Druckbereich wird nicht erkannt: Stelle sicher, dass die Formel in "Drucksteuerung!C1" korrekt ist und die Bereiche richtig definiert sind.
  • Druckbereich zeigt leere Seiten: Überprüfe, ob die Zellen in den definierten Bereichen tatsächlich Daten enthalten. Wenn sie leer sind, wird nichts gedruckt.
  • INDIREKT funktioniert nicht: Achte darauf, dass die Syntax in "Drucksteuerung" korrekt ist. Verwende Semikolons zur Trennung der Bereiche.

Alternative Methoden

  1. VBA-Makros verwenden: Wenn du mehrere Druckbereiche festlegen möchtest, ohne ständig manuell anpassen zu müssen, kannst du ein VBA-Makro schreiben, um den Druckbereich dynamisch festzulegen.
  2. Benennung von Bereichen: Du könntest auch mehrere benannte Bereiche im Namensmanager erstellen und dann mit einer Formel entscheiden, welcher Bereich aktiv sein soll.

Praktische Beispiele

  1. Beispiel für einen dynamischen Druckbereich:

    • Wenn du die Bedingungen in "Drucksteuerung" so festlegst:
      • A1: Druck!$A$1:$E$41
      • A2: Druck!$F$1:$J$41
    • Dann könnte die C1-Formel so aussehen:
      =INDIREKT(Drucksteuerung!A1) & ";" & INDIREKT(Drucksteuerung!A2)
  2. Druckbereich festlegen für mehrere Seiten: Bei Bedarf kannst du die Formel erweitern, um auch Seiten 3 und 4 zu integrieren, abhängig von den Inhalten.


Tipps für Profis

  • Druckbereich automatisch anpassen: Verwende die Funktion =WENN() in Kombination mit INDIREKT, um den Druckbereich basierend auf Bedingungen dynamisch zu ändern.
  • Drucklinien entfernen: Um die gestrichelten Linien im Druckbereich auszublenden, gehe zu "Seitenlayout" und deaktiviere die Drucklinien.
  • Tastenkombinationen verwenden: Du kannst die Druckbereich festlegen Excel mehrere Seiten über die Tastenkombination Alt + P, S, R erleichtern.

FAQ: Häufige Fragen

1. Wie kann ich mehrere Druckbereiche festlegen?
Um mehrere Druckbereiche festzulegen, kannst du die Bereiche in einer Zelle kombinieren und diese dann mit INDIREKT im Namensmanager nutzen.

2. Funktioniert der dynamische Druckbereich auch in Excel Online?
Ja, die beschriebenen Methoden funktionieren auch in Excel Online, solange du auf die Formeln und den Namensmanager zugreifen kannst.

3. Was tun, wenn der Druckbereich nicht angezeigt wird?
Überprüfe, ob die Zellen in den definierten Bereichen Daten enthalten, und stelle sicher, dass die Formel im Namensmanager korrekt ist.

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