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

Druckmakro-Aufzeichnung

Druckmakro-Aufzeichnung
25.04.2015 17:53:36
Matthias L

Hallo
Kann mir jemand erklären was hier der Rekorder aufgezeichnet hat?

ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"

Wenn ich einfach nur schreib:

ExecuteExcel4Macro "PRINT(1)"

druckt Excel ja auch.
Was bedeuten 1,,,1,,,,,,,,2 die vielen Komma und das True / False?

"PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)
Gruß Matthias

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Druckmakro-Aufzeichnung
27.04.2015 11:03:07
fcs
Hallo Mathias,
diese Excel4Macro ist eigentlich ein relikt der Excel-Vergangenheit, aber aus Gründen, die nur MS-Programmierer kennen, wird unter der 2007er-Version beim Recorder noch das Excel4-Makro verwendet, statt der Methode PrintOut.
Die Reihenfolge der vom Makro verwendeten Parameter kenne ich leider nicht. Wenn du mit den Einstellungen im Druckmenü rumprobierst, dann findest du noch einige Parameter heraus.
Die Tatsache, dass das Makro auch ohne Parameter funktioniert, liegt daran, dass alle Druckparameter optional sind.
Ich konnte bei einer Kurzrecherche die Parameter auf die schnelle nicht herausfinden.
Verwende in Makros zum Drucken die PrintOut-Methode. Da findest du unter der VBA-Hilfe auch die Parameter.
Nachfolgend ein paar Beispiele:
Sub Drucken()
'Parameter von PrintOut
'Ausdruck.PrintOut(From, To, Copies, Preview, ActivePrinter, PrintToFile, Collate, _
PrToFileName, IgnorePrintAreas)
Dim strDrucker As String
'aktives Blatt
ActiveSheet.PrintOut preview:=True, Copies:=1
'bestimmtes Blatt auf aktivem Drucker drucken
Activeworkbooks.Sheets("Tabelle1").PrintOut
'gesamte Arbeitsmappe
ActiveWorkbook.PrintOut preview:=True
'gruppierte Blätter
ActiveWorkbook.Sheets(Array("Tabelle1", "Tabelle2")).PrintOut preview:=True
ActiveSheet.Select 'Gruppierung aufheben
'selektierte Blätter auf bestimmtem Drucker ausgeben
strDrucker = Application.ActivePrinter 'aktiven Drucker merken
ActiveWindow.SelectedSheets.PrintOut preview:=True, _
ActivePrinter:="\\S150A0002\P100A0068 auf Ne06:"
Application.ActivePrinter = strDrucker
'Markierten Zellbereich drucken
Selection.PrintOut
End Sub
Gruß
Franz

Anzeige
Danke für Deinen Beitrag ...owT
27.04.2015 23:02:03
Matthias L

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige