Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Drucken aller Blätter in einer Excel-Mappe

Frage Microsoft Microsoft Office

Mitglied: Jochem

Jochem (Level 2) - Jetzt verbinden

24.10.2012 um 14:33 Uhr, 13332 Aufrufe, 8 Kommentare

Office Prof 2007

Moin zusammen,

ich habe da ein Problem mit Excel, wenn ich alle Blätter in einer Excel-Tabelle drucken will. Doch kurz zum Umfeld und dem Grund dieser Frage.

Aus einem Ratsinformationssystem werden sog. Druckmappen erzeugt, welche in gepackter Form alle TOPs enthalten. Diese zip-Datei wird nun in ein Verzeichnis entpackt. Mit "Datei - alles auswählen" werden alle Dateien (Word-, Excel-, PDF- und JPG-Format) markiert. Über die Auswahl "Drucken" sollen nun alle Dateien gedruckt werden. Das klappt für alle Formate bis auf die Excel-Datei. Aus der Excel-Datei wird nur das erste Blatt gedruckt.

Wie kann ich Excel dazu bewegen, aufgrund des oben beschriebenen Vorgehens ("Alles auswählen" und "Drucken") alle Blätter aus der Datei zu drucken?

Nachtrag: Die Tabellenblätter einzeln zu drucken ist keine Option, da die Ausdrucke in der Reihenfolge erscheinen müssen, wie sie als TOP eingegliedert sind. Die so erstellte Druckausgabe ist dann Vorlage für ein Kopiersystem, in welchem n Kopien dieser Druckausgabe erstellt werden.

Hat jemand eine Idee, wie dies mit Bordmitteln zu lösen ist?

Gruß J chem
Mitglied: MrNetman
24.10.2012, aktualisiert um 14:48 Uhr
Hi Jochem,

im Druckdialog gibt es die Möglichkiet die gesamte Arbeitsmappe statt des aktuellen Arbeitsblattes zu drucken. Das sollte doch auch scriptgesteuert machbar sein.
So wie ich es hier gefunden habe: http://www.computerwissen.de/office/excel/artikel/alle-excel-tabellenbl ...
"Das folgende Makro können Sie einsetzen, um alle Tabellenblätter in der aktiven Arbeitsmappe auszudrucken. Es werden nur die sichtbaren Tabellen gedruckt:

Sub SichtbareTabellenDrucken()
Dim Arbeitsmappe As Worksheet
For Each Arbeitsmappe In Worksheets
If Arbeitsmappe.Visible = True Then
Arbeitsmappe.PrintOut
End If
Next Arbeitsmappe
End Sub

Die Tabellen gibt das Makro auf Ihrem Standarddrucker aus. Zum Testen können Sie das Kommando PrintOut durch den Befehl PrintPreview ersetzen. Dann wird nur die Seitenansicht angezeigt, ohne dass die Tabellen gedruckt werden. "



Gruß
Netman
Bitte warten ..
Mitglied: d4shoerncheN
24.10.2012 um 14:55 Uhr
Hallo, Netman.

Daran hatte ich auch schon gedacht, hab es aber noch nicht gepostet.

Grund: Er erstellt ja durch das Programm immer wieder ein neues Excel-File, in welchem der VBA-Code nicht enthalten ist.

Man müsste also die Standard-Druckoptionen im Excel komplett umbiegen, dass er grundsätzlich alle Blätter druckt. Das bedeutet dann bei einer Datei mit nur einem Tabellenblatt aber auch, dass er die Standard-Tabellenblätter (3) mit druckt.

Gruß
Bitte warten ..
Mitglied: Jochem
24.10.2012 um 15:07 Uhr
@MrNetman,
@d4shoerncheN

wie ich schon schrieb: "mit Bordmitteln", also ohne Macros, Scripte, etc. Die Vorlagen (TOPs) kommen von verschiedenen Personen und da ist der kleinste gemeinsame Nenner "Der PC ist eine schwarze Kiste und ich darf nicht reinbeissen!" Sorry, aber dem ist so.
Wenn so etwas laufen soll, dann muß JEDER das in seine Excel-Tabelle integrieren und da sehe ich Probleme. Wenn einer es macht und der nächste nicht, dann kann ich fast den kompletten Druckoutput in die Tonne treten bzw. manuell nacharbeiten, je nachdem, als welcher TOP die Excel-Tabelle auftaucht. Damit ist weder mir noch den Kollegen in der Hausdruckerei geholfen.
Es wäre also schon gut, wenn der generelle Druck-Dialog so umgebogen werden könnte, daß alle Tabellenblätter gedruckt werden.
Ich warte dann mal auf weitere Vorschläge. Danke bis hierher.

Gruß J chem
Bitte warten ..
Mitglied: andimue
24.10.2012, aktualisiert um 15:16 Uhr
Wenn's auch ein bisschen VBS sein darf ?

Bitteschön:

xls_alle_blaetter_drucken.vbs

01.
Const xlDoNotSaveChanges = 2 
02.
 
03.
Dim fso, oXL, oWkbk 
04.
 
05.
Set fso = CreateObject("Scripting.FileSystemObject") 
06.
Set oXL = CreateObject("Excel.Application") 
07.
 
08.
oXL.Visible = False 
09.
 
10.
If WScript.Arguments.Count = 0 Then 
11.
WScript.Quit 
12.
Else 
13.
For A = 0 To (WScript.Arguments.Count - 1) 
14.
If (Right(WScript.Arguments.Item(A), 3) = "xls") _ 
15.
AND fso.FileExists(WScript.Arguments.Item(A)) Then 
16.
Set oWkbk = oXL.Workbooks.Open(WScript.Arguments.Item(A)) 
17.
oWkbk.PrintOut 
18.
oWkbk.Close xlDoNotSaveChanges 
19.
End If 
20.
Next 
21.
End If 
22.
 
23.
oXL.Quit 
24.
Set fso = Nothing 
25.
Set oXL = Nothing
Aufrufen mit

01.
cscript xls_alle_blaetter_drucken.vbs  zu-drucken-datei.xls
Übrigens, dein Kommentar "Ich warte dann mal auf weitere Vorschläge" kommt ein bisschen arrogant rüber, meinste nicht ?
Bitte warten ..
Mitglied: Jochem
24.10.2012 um 15:31 Uhr
Moin,

@andimue,
ok, klingt vielleicht arrogant, soll aber nichts anderes bedeuten, als daß ich auf Vorschläge von anderen Teilnehmern gespannt bin und deren Anregungen gerne auch noch aufnehme. Klingt das für Dich besser?

BTW: Ich hatte geschrieben "mit Bordmitteln" und nochmal explizit "also ohne Macros, Scripte etc.". Es darf also nicht "ein bisschen VBS" sein.

Gruß J chem
Bitte warten ..
Mitglied: andimue
24.10.2012 um 15:33 Uhr
cscript ist (für mich) ein Bordmittel, aber wenn's nicht geht dann nicht.
Bitte warten ..
Mitglied: Jochem
24.10.2012 um 17:07 Uhr
Moin,

nur mal so zum Nachdenken meinerseits: Habe ich ne Chance, dieses Macro irgendwie in die Dokumentenvorlage für Excel zu integrieren, so daß das Macro grundsätzlich beim Erstellen einer neuen Excel-Datei aktiviert wird?

Gruß J chem
Bitte warten ..
Mitglied: 76109
26.10.2012, aktualisiert 28.10.2012
Hallo Jochen!

Wäre die Frage zu klären, ob diese Funktion generell für alle Excel-Dateien aktiv sein soll. D.h. der Anwender bearbeitet andere Dateien und will vielleicht nur eine Seite ausdrucken etc...

Daher mein Vorschlag, wie es zumindest in meiner etwas älteren Excel-Version funktioniert, wäre eine AddIn-Datei (*.xla) in das Verzeichnis
'..\\Users\Administrator\Anwendungsdaten\Microsoft\Excel\XLStart' zu legen, das automatisch beim Excel-Start gestartet wird und alle Druckbefehle abfängt. Hierbei besteht insbesondere auch die Möglichkeit, diese Funktion nur für bestimmte Excel-Mappen zu aktivieren. D.h. z.B. nur Excel-Dateien, die ein bestimmtes Namensmuster oder sonstige Eigenschaften aufweisen.

Gruß Dieter
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Microsoft Office
Darstellung einer Produktionsmenge in einer Excel Übersicht! (4)

Frage von Magnus32x1 zum Thema Microsoft Office ...

Batch & Shell
gelöst Loginzeiten aus dem Ereignisprotokoll in Excel schreiben (1)

Frage von l-Ne0n zum Thema Batch & Shell ...

Microsoft Office
gelöst Excel SUMIF sozusagen (2)

Frage von PharIT zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...