Top-Themen

Aktuelle Themen (A bis Z)

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
GELÖST

Excel-Druck-Makro

Frage Microsoft Microsoft Office

Mitglied: MasterBaiter

MasterBaiter (Level 1) - Jetzt verbinden

07.01.2015 um 11:36 Uhr, 1742 Aufrufe, 5 Kommentare, 1 Danke

Hallo und frohes Neues.

Folgende Situation:

Excel 2010;Win7;
Excel Sheet´s sollen im Querformat gedruckt werden, es lassen sich aber keine Druckeinstellungen speichern,
wenn man das nächste Sheet öffnet, sind diese dann verworfen.
Ich habe nun ein Makro erstellt indem es mir nach dem drücken von Strg+P das Format auf Quer stellt und druckt.
Soweit so gut.
(Wenn es mehrere Sheets betrifft, öffnet Excel für jedes ein Fenster, was man dann nochmal schließen muss nach dem Drucken, nach 20 fängt´s an zu nerven)

Meine Frage ist folgende:

Kann man dieses Prozedere eleganter gestaltet?
Zu Beispiel, dass das Makro das schließen des aktuellen Fensters mit einbezieht?
Oder ich eine Möglichkeit habe, per drag&drop auf eine Datei den druck aller Dokumente mit einer Vorgabe zu starten, so wie bei einer .bat?

Ist jemand da draußen der weiter helfen kann?

Danke
Gruß

Mitglied: colinardo
07.01.2015, aktualisiert um 12:35 Uhr
Moin,
gabs schon mal, schaust du in diesen Thread für eine Lösung für dein Anliegen:
VBS - Exceldatei öffnen, drucken und schließen

Grüße Uwe
Bitte warten ..
Mitglied: MasterBaiter
07.01.2015, aktualisiert um 13:09 Uhr
So schaut das Makro aus:
(Ich weiß leider nicht wie man mit VBA arbeitet)

01.
Sub Querdruck() 
02.
03.
' Querdruck Makro 
04.
05.
' Tastenkombination: Strg+p 
06.
07.
    Application.PrintCommunication = False 
08.
    With ActiveSheet.PageSetup 
09.
        .PrintTitleRows = "" 
10.
        .PrintTitleColumns = "" 
11.
    End With 
12.
    Application.PrintCommunication = True 
13.
    ActiveSheet.PageSetup.PrintArea = "" 
14.
    Application.PrintCommunication = False 
15.
    With ActiveSheet.PageSetup 
16.
        .LeftHeader = "" 
17.
        .CenterHeader = "" 
18.
        .RightHeader = "" 
19.
        .LeftFooter = "" 
20.
        .CenterFooter = "" 
21.
        .RightFooter = "" 
22.
        .LeftMargin = Application.InchesToPoints(0.7) 
23.
        .RightMargin = Application.InchesToPoints(0.7) 
24.
        .TopMargin = Application.InchesToPoints(0.787401575) 
25.
        .BottomMargin = Application.InchesToPoints(0.787401575) 
26.
        .HeaderMargin = Application.InchesToPoints(0.3) 
27.
        .FooterMargin = Application.InchesToPoints(0.3) 
28.
        .PrintHeadings = False 
29.
        .PrintGridlines = False 
30.
        .PrintComments = xlPrintNoComments 
31.
        .PrintQuality = 600 
32.
        .CenterHorizontally = False 
33.
        .CenterVertically = False 
34.
        .Orientation = xlLandscape 
35.
        .Draft = False 
36.
        .PaperSize = xlPaperA4 
37.
        .FirstPageNumber = xlAutomatic 
38.
        .Order = xlDownThenOver 
39.
        .BlackAndWhite = False 
40.
        .Zoom = 100 
41.
        .PrintErrors = xlPrintErrorsDisplayed 
42.
        .OddAndEvenPagesHeaderFooter = False 
43.
        .DifferentFirstPageHeaderFooter = False 
44.
        .ScaleWithDocHeaderFooter = True 
45.
        .AlignMarginsHeaderFooter = True 
46.
        .EvenPage.LeftHeader.Text = "" 
47.
        .EvenPage.CenterHeader.Text = "" 
48.
        .EvenPage.RightHeader.Text = "" 
49.
        .EvenPage.LeftFooter.Text = "" 
50.
        .EvenPage.CenterFooter.Text = "" 
51.
        .EvenPage.RightFooter.Text = "" 
52.
        .FirstPage.LeftHeader.Text = "" 
53.
        .FirstPage.CenterHeader.Text = "" 
54.
        .FirstPage.RightHeader.Text = "" 
55.
        .FirstPage.LeftFooter.Text = "" 
56.
        .FirstPage.CenterFooter.Text = "" 
57.
        .FirstPage.RightFooter.Text = "" 
58.
    End With 
59.
    Application.PrintCommunication = True 
60.
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _ 
61.
        IgnorePrintAreas:=False 
62.
End Sub
Bitte warten ..
Mitglied: colinardo
07.01.2015, aktualisiert um 16:01 Uhr
Zitat von MasterBaiter:
(Ich weiß leider nicht wie man mit VBA arbeitet)
na das haben wir hier ja besonders gerne ...

Folgendes Script als *.vbs speichern und das(die) Excelfiles via Drag n' Drop auf das VBS-Script ziehen. Für deinen Test ist Excel sichtbar geschaltet. Das lässt sich aber auch unsichtbar schalten indem man Zeile 11 auf False stellt.
01.
Dim objExcel, fso, files, filename, wb, ws 
02.
Set files = WScript.Arguments 
03.
If files.Count = 0 Then  
04.
	MsgBox "Es wurde keine Excel-Datei übergeben",vbExclamation 
05.
	WScript.Quit 
06.
End If 
07.
'Objekte erzeugen 
08.
Set fso = CreateObject("Scripting.FileSystemObject") 
09.
set objExcel = CreateObject("Excel.Application") 
10.
'Excel sichtbar machen 
11.
objExcel.visible = True 
12.
'Dialoge unterdrücken 
13.
objExcel.DisplayAlerts = False 
14.
For i = 0 To files.Count -1 
15.
	filename = files(i) 
16.
	If fso.FileExists(filename) Then 
17.
		' Datei öffnen 
18.
		Set wb = objExcel.Workbooks.Open(filename,,True) 
19.
		'gewünschtes Worksheet drucken 
20.
		Set ws = wb.Worksheets(1) 
21.
		objExcel.PrintCommunication = False 
22.
		With ws.PageSetup 
23.
			.PrintTitleRows = "" 
24.
        	.PrintTitleColumns = "" 
25.
        	.PrintArea = "" 
26.
        	.LeftHeader = "" 
27.
	        .CenterHeader = "" 
28.
	        .RightHeader = "" 
29.
	        .LeftFooter = "" 
30.
	        .CenterFooter = "" 
31.
	        .RightFooter = "" 
32.
	        .LeftMargin = objExcel.InchesToPoints(0.7) 
33.
	        .RightMargin = objExcel.InchesToPoints(0.7) 
34.
	        .TopMargin = objExcel.InchesToPoints(0.787401575) 
35.
	        .BottomMargin = objExcel.InchesToPoints(0.787401575) 
36.
	        .HeaderMargin = objExcel.InchesToPoints(0.3) 
37.
	        .FooterMargin = objExcel.InchesToPoints(0.3) 
38.
	        .PrintHeadings = False 
39.
	        .PrintGridlines = False 
40.
	        .PrintComments = -4142 
41.
	        .PrintQuality = 600 
42.
	        .CenterHorizontally = False 
43.
	        .CenterVertically = False 
44.
	        .Orientation = 2	'Landscape 
45.
	        .Draft = False 
46.
	        .PaperSize = 9	'A4 
47.
	        .FirstPageNumber = -4105 
48.
	        .Order = 1 
49.
	        .BlackAndWhite = False 
50.
	        .Zoom = 100 
51.
	        .PrintErrors = 0 
52.
	        .OddAndEvenPagesHeaderFooter = False 
53.
	        .DifferentFirstPageHeaderFooter = False 
54.
	        .ScaleWithDocHeaderFooter = True 
55.
	        .AlignMarginsHeaderFooter = True 
56.
	        .EvenPage.LeftHeader.Text = "" 
57.
	        .EvenPage.CenterHeader.Text = "" 
58.
	        .EvenPage.RightHeader.Text = "" 
59.
	        .EvenPage.LeftFooter.Text = "" 
60.
	        .EvenPage.CenterFooter.Text = "" 
61.
	        .EvenPage.RightFooter.Text = "" 
62.
	        .FirstPage.LeftHeader.Text = "" 
63.
	        .FirstPage.CenterHeader.Text = "" 
64.
	        .FirstPage.RightHeader.Text = "" 
65.
	        .FirstPage.LeftFooter.Text = "" 
66.
	        .FirstPage.CenterFooter.Text = "" 
67.
	        .FirstPage.RightFooter.Text = "" 
68.
		End With 
69.
		objExcel.PrintCommunication = True 
70.
 
71.
		'Worksheet drucken 
72.
		ws.PrintOut ,,1,,,,True,,False 
73.
		'Workbook wieder schließen 
74.
		wb.Close False 
75.
	End If 
76.
Next 
77.
'Warnmeldungen wieder aktivieren und Excel schließen 
78.
objExcel.DisplayAlerts = True 
79.
objExcel.Quit 
80.
'Objekte releasen 
81.
Set objExcel = Nothing 
82.
Set fso = Nothing
Bitte warten ..
Mitglied: MasterBaiter
07.01.2015 um 15:49 Uhr
Super Sache
...
Genau das was ich (fast) brauche.
*leider druckt er es nicht im Querformat und schwarz-weiß, der Druck ist aber auf "farbig" eingestellt.

Auch als ich .Orientation = 2 'Landscape mit xlLandscape vertauscht hatte...
Bitte warten ..
Mitglied: colinardo
07.01.2015, aktualisiert um 16:12 Uhr
Zitat von MasterBaiter:
Genau das was ich (fast) brauche.
*leider druckt er es nicht im Querformat und schwarz-weiß, der Druck ist aber auf "farbig" eingestellt.
geht hier einwandfrei... vermutlich falsch kopiert.
Auch als ich .Orientation = 2 'Landscape mit xlLandscape vertauscht hatte...
die Konstanten gibts in VBS nicht !
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Excel Makro
Frage von maloh1984Microsoft Office4 Kommentare

Hallo Habe ein Problem, ein Kunde der hat Excellisten mit Makro die lassen sich öffnen aber die Buttons reagieren ...

Microsoft Office
Excel-Makro
gelöst Frage von yuki13Microsoft Office7 Kommentare

Hallo Zusammen!! :-) Ich bin nicht so fit in Excel Makros und wollte mich hier erkundigen, ob mir jemand ...

Outlook & Mail
Outlook Makro für anderen Drucker als Standard drucker
Frage von Wu3stenfuchsOutlook & Mail3 Kommentare

Hallo Zusammen, ich versuche ein Makro zu basteln welches mir automatisch aus Outlook Druckt. Jedoch muss ein anderer Drucker ...

VB for Applications
Excel Makro Kreisdiagramm für Fortgeschrittene
gelöst Frage von StefanHVB for Applications3 Kommentare

hallo zusammen, habe mal wieder ein excel / makro problem  ich möchte ein kuchendiagramm / kreisdiagramm erstellen, das ...

Neue Wissensbeiträge
Mac OS X

MacOS wo ist die Tilde ?

Tipp von Alchimedes vor 55 MinutenMac OS X

Hallo, ich hab eine MacOS qwertz Keyboard auf US Layout umgestellt da die Sonderzeichen besser ereichbar sind. Leider fehlt ...

Datenschutz

Weitere Inforamtionen zum Sicherheitsproblem BeA

Information von Penny.Cilin vor 7 StundenDatenschutz

Im folgenden ein weiterer Bericht über die Sicherheitsprobleme von Bea. Fataler Konstruktionsfehler im besonderen elektronischen Anwaltspostfach Gruss Penny

Windows 10

Systemdienste behalten nach Win10 inplace-Upgrade nicht die ggf. modifizierte Startart bei

Tipp von DerWoWusste vor 9 StundenWindows 103 Kommentare

Stellt Euch vor, Ihr habt ein Win10 System und modifiziert dort die Startart von Systemdiensten. Zum Beispiel wollt Ihr ...

Microsoft Office

Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei

Anleitung von SarekHL vor 12 StundenMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Microsoft Office
Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei
Anleitung von SarekHLMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von fyrb38Windows 1017 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...