ich hab lange gesucht und nichts gefunden, deshalb meine Frage. Wie schaffe ich es, dass ich eine manuelle Auswahl von verschiedenen Tabellenblätter(bzw. Reiter) drucken kann? Das Problem was noch hinzukommt ist, dass die Druckbereiche auf den jeweiligen Tabellenblättern unterschiedlich groß sind und Nebenrechnungen enthalten die nicht mit gedruckt werden sollen. Ist sowas auch ohne VBA möglich und wenn nicht wie sieht dann die Lösung aus.
Im Anhang ist eine Beispiel Datei um es zu verdeutlichen.
den Druckbereich kannst Du für jedes Tabellenblatt wie folgt festlegen: - markiere den gewünschten Zellbereich - gehe im Menü auf das Register Seitenlayout - klicke im Menüpunkt Druckbereich auf Druckbereich festlegen
Willst Du mehrere Tabellenblätter drucken, markierst Du diese vorher mit gedrückter Strg-Taste in der unteren Registerleiste.
Gruß Uwe
Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:1 Nutzer sagt Danke an Kuwer für diesen Beitrag 28 • Joe
Das ist zu aufwendig da die Rechnungen Teilweise ziemlich lang sind und unmengen an Tabellenblätter da sind, sodass man ziemlich schnell durcheinander kommt. Es sollte am besten ein Tabellenblatt geben auf der man die Übersicht hat über die verschiedenen Tabellenblätter und die dann jeweils anwählen kann. Am besten wäre noch ein Inhaltsverseichnis was sich demnach auch ändert.
meinst du mit Übersicht Vorschaubilder, wie du sie z.B. bei PowerPoint an der linken Seite hast?
Das ist meines Wissens nach in Excel nicht möglich. Aber vielleicht hilft dir diese Krücke:
Fotografiere deine Druckbereiche mit dem Kamerasymbol und füge sie entsprechend untereinander in ein neues Arbeitsblatt ein. Mit einem jeweiligen DK kommst du auf deinen Originalbereich, den du nun einfach ausdrucken kannst.
Gruß Günter Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen. angebl. von Georg Christoph Lichtenberg (1742-1799)
Erstmal Hallo Kuwer und danke für deine Antwort war gerade zu eilig meine Antwort abzuschicken.
Hi Günter,
Nein so meine ich es nicht. Es sollte nur eine Seite geben mit den Überschriften der einzelnen Tabellenblätter die man z.B. mit einem Kontrollkästchen anwählen kann welches davon gedruck werden sollte. So ähnlich wie in meiner Beispieldatei.
wenn die Beschriftungen der Kontrollkästchen exakt den Tabellenblattnamen entsprechen (was in deiner Beispieldatei nicht der Fall ist), ginge es per VBA z.B. so:
Code:
Sub Schaltfläche4_Klicken() Dim oCheckbox As CheckBox For Each oCheckbox In ActiveSheet.CheckBoxes If oCheckbox.Value = 1 Then Worksheets(oCheckbox.Caption).PrintPreview 'Worksheets(oCheckbox.Caption).PrintOut End If Next oCheckbox End Sub
Gruß Uwe
Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:1 Nutzer sagt Danke an Kuwer für diesen Beitrag 28 • Joe
Ich werd wohl nicht drum herum kommen mich mit VBA zu beschäftigen, also werde ich mal anfangen. Uwe's Code werd ich mal als Leitlinie nehmen, falls ich es nicht schaffen sollte werd ich mich nochmal bei euch melden.
Hallöchen Joe, Ein Inhaltsverzeichnis bekommt man auch mit Formeln zusammen. Du kannst damit auf die Tabellenblätter verlinken und dann dort drucken. Wenn das so reicht, geht es ohne VBA.
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
das Inhaltsverzeichnis hab ich mit Formeln hinbekommen, trotzdem Danke André. Ich hab aber trotzdem Probleme die Sachen mit VBA zu programmieren. Ich hab ein Button mit den Namen Drucken. Beim betätigen diesen Buttons soll er alle Tabellenblätter, die zuvor per Kontrollkästchen ausgewählt wurden, in einer Druckvorschau anzeigen. Die Kontrollkästchen haben den selben Namen wie die Tabellenblätter( by the way heißt es Tabellenblätter oder Reiter?). Mit Hilfe von Uwe's Code hab ich diesen hier programmiert der aber nicht funktioniert. Wäre sehr Dankbar wenn jemand mal rüberschauen kann.
Code:
Private Sub Drucken_Click() Dim Tabelle1 As Checkbox For Each Checkbox In ActiveSheet.CheckBoxes If Tabelle1.Value = True Then Worksheets(Tabelle1.Caption).PrintPreview 'Worksheets(Tabelle1.Caption).PrintOut End If Next Tabelle2 If Tabelle2.Value = True Then Worksheets(Tabelle2.Caption).PrintPreview 'Worksheets(Tabelle2.Caption).PrintOut End If Next Tabelle3 If Tabelle3.Value = True Then Worksheets(Tabelle3.Caption).PrintPreview 'Worksheets(Tabelle3.Caption).PrintOut End If End Sub
26.08.2015, 12:14 (Dieser Beitrag wurde zuletzt bearbeitet: 26.08.2015, 12:22 von Rabe.)
Hi,
Du schreibst, Du hast keine Ahnung von VBA, aber dann schreibst Du gleich ein vorgeschlagenes funktionierendes Makro komplett um? Warum verwendest Du nicht erst mal das Makro von Uwe?
(26.08.2015, 09:58)Joe schrieb: Mit Hilfe von Uwe's Code hab ich diesen hier programmiert der aber nicht funktioniert. Wäre sehr Dankbar wenn jemand mal rüberschauen kann.
Code:
Next Tabelle2
was soll das machen? Gibt das keine Fehlermeldung?
Tabelle1 ist ein Excel-Name und sollte nicht als Variable verwendet werden.
Wenn Du vor Deinem Makro als erste Zeile "Option Explicit" schreibst, dann wirst Du auf Fehler hingewiesen. siehe hier:
Code:
Option Explicit
Sub Schaltfläche4_Klicken() Dim oCheckbox As CheckBox For Each oCheckbox In ActiveSheet.CheckBoxes If oCheckbox.Value = 1 Then Worksheets(oCheckbox.Caption).PrintPreview 'Worksheets(oCheckbox.Caption).PrintOut End If Next oCheckbox End Sub
Sub Drucken_Click() 'dieses Makro bringt sofort Fehlermeldungen Dim Tabelle1 As CheckBox For Each CheckBox In ActiveSheet.CheckBoxes If Tabelle1.Value = True Then Worksheets(Tabelle1.Caption).PrintPreview 'Worksheets(Tabelle1.Caption).PrintOut End If Next Tabelle2 If Tabelle2.Value = True Then Worksheets(Tabelle2.Caption).PrintPreview 'Worksheets(Tabelle2.Caption).PrintOut End If Next Tabelle3 If Tabelle3.Value = True Then Worksheets(Tabelle3.Caption).PrintPreview 'Worksheets(Tabelle3.Caption).PrintOut End If End Sub