Per Makro auf Drucker Eigenschaften zugreifen?

Hallo.

Kann man per Makro auf die Druckereigenschaften zugreifen?
Unser Drucker hat zwei Fächer (1 Fach normalpapier, 2 Fach mit Briefkopf)

Ich benötige nämlich einen Ausdruck von Tabelle1 zuerst einmal mit Briefkopf (Fach2), und danach 2weitere von Fach 1 (normalpapier)

geht das?
Habe es mit Makroaufzeichen versucht, aber da nimmt er mir nur den Druck befehl an.

DAnke

Hallo.
Kann man per Makro auf die Druckereigenschaften zugreifen?
Unser Drucker hat zwei Fächer (1 Fach normalpapier, 2 Fach mit
Briefkopf)

Hallo Anton
Leider geht das nicht so wie im Word. Dort kannst Du mit einem Makro auf Seite einrichten / Format zugreifen. Im Excel kommst Du nicht auf so was.

Ich mach es ganz steinzeitmässig mit SENDKEYS. Ich schäme mich fast, Dir das zu zeigen!

Sub DruckSchacht2()

’ Teil 1 wählt den zweiten Drucker aus
Application.SendKeys „%dd“, True

’ Teil 2 wählt den 2. Schacht aus
Application.SendKeys „%e“, True 'true nützt nichts ??
Application.SendKeys „Schacht 2“

Application.SendKeys „{RETURN}{RETURN}“
'das entspricht:
'ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

’ Teil 3 wählt wieder den dritten Schacht aus = Standardfach
Application.SendKeys „%dd“, True
Application.SendKeys „%e“, True 'true nützt nichts ??
Application.SendKeys „Schacht 3“
Application.SendKeys „{RETURN}{ESC}“

End Sub

Das klappt, solange nicht ein weiterer Drucker installiert wird usw.

Marion hat zu diesem Problem eine Riesen-Arbeit geschrieben und dabei das Excel-Blatt via Word ausdrucken lassen. Dort kann man, wie gesagt, die Fächer ohne weiteres ansteuern. Es wird aber vor allem bei mehrseitigen Excel-Blättern kompliziert.

Grüsse Niclaus

Hallo Niclaus.
Danke für deinen Tipp.
Werde ihn gleich mal ausprobieren.

Mfg. Ka

Drucker fach auswählen per Vba
Hallo Anton,

Kann man per Makro auf die Druckereigenschaften zugreifen?
Unser Drucker hat zwei Fächer (1 Fach normalpapier, 2 Fach mit
Briefkopf)

Ich glaube es geht irgendwie, aber wenn Nepumuk schon sagt der „einfachste“ Weg ist…
dann sollte man den nehmen.

Schau mal hier:

http://www.office-loesung.de/ftopic52515_0_0_asc.php

(Der Link von der Lisa dort funktioniert nicht, aber er weist auf die bluewineite, die in der Brettbeschreibung des Textverarbeitungsbrettes genannt wird. Schau halt dort manuell nach.

Melde dich nochmal wenn du es nicht hinbekommst mit den Buttons.

Habe es mit Makroaufzeichen versucht, aber da nimmt er mir nur
den Druck befehl an.

Ich habe jetzt nichts getestet mangels Excel an diesem Gerät, zeichnet der Rekorder die Auswahl und den Druckbefehl an einen Drucker auf?

Gruß
Reinhard

Hallo Anton,
Kann man per Makro auf die Druckereigenschaften zugreifen?
Ich glaube es geht irgendwie, aber wenn Nepumuk schon sagt der
„einfachste“ Weg ist…
Schau mal hier:
http://www.office-loesung.de/ftopic52515_0_0_asc.php

Habe es mit Makroaufzeichen versucht, aber da nimmt er mir nur
den Druck befehl an.

Gruß
Reinhard

Hallo Reinhard
Die Seite, die Du oben angibst betrifft WORD-VBA. Dort gibts bei mir mit den Makros eigentlich keine Probleme.
Aber im Excel, dort krieg ich’s nicht auf eine vernünftige Weise hin - ausser mit Marions Vorschlag, die Excel-Tabellen im Word auszudrucken. Die Druckerbefehle im Excel sind nicht so komfortabel zu „makrotisieren“ wie die in Word.
Grüsse Niclaus

Hallo Niclaus,

Kann man per Makro auf die Druckereigenschaften zugreifen?
Ich glaube es geht irgendwie, aber wenn Nepumuk schon sagt der
„einfachste“ Weg ist…
Schau mal hier:
http://www.office-loesung.de/ftopic52515_0_0_asc.php

Die Seite, die Du oben angibst betrifft WORD-VBA. Dort gibts
bei mir mit den Makros eigentlich keine Probleme

Nepumuk ist in Word nicht so fit wie in Excel, er meint garantiert Excel in dem office-Loesngsbeitrag:smile:

Und ja, der nicht funtionierende Link geht auf eine Word-FAQ

Aber im Excel, dort krieg ich’s nicht auf eine vernünftige
Weise hin - ausser mit Marions Vorschlag, die Excel-Tabellen
im Word auszudrucken. Die Druckerbefehle im Excel sind nicht
so komfortabel zu „makrotisieren“ wie die in Word.

Wenn der Fachwechsel in Word gelingt, so macht es natürlich Sinn die Excelblätter via Word zu drucken.

Alternative ist wie erwähnt, den Drucker mehrmals zu „installieren“ mit verschieden Fächern.

Druckerwechsel ist dann in Excel einfach mit:

Sub Satz_print()
Dim D1 As String, D2 As String
D1 = „Mein Lexmark auf LPT1 Fach1:“
D2 = „Mein Lexmark auf LPT1 Fach2:“
sheets(1).PrintOut ActivePrinter:=D1
sheets(2).PrintOut ActivePrinter:=D2
End Sub

o.ä.

Sendkeys geht auch, aber das ist sowieso nur im Notfall zu benutzen, da man nie weiß wohin es die Daten schickt.

Und ich konnte noch nicht die Gestzmäßigkeit entdecken welchen Einfluß dieser Parameter True/false auf Sendkeys hat. Sehr oft ist kein Unterschied zu erkennen ob man ihn benutzt oder nicht.

Gruß
Reinhard

Hallo Niclaus,

Ich mach es ganz steinzeitmässig mit SENDKEYS. Ich schäme mich
fast, Dir das zu zeigen!

Warum das denn? Viele nutzen sendkeys um Fächer/Schächte oder wie die sonst noch heissen auszuwählen. Excel zwingt einen halt dazu.

Manche machen das so:

Sub PrintSettings()
SendKeys „%e%z{down 2}{enter 2}“
Application.Dialogs(xlDialogPrint).Show
End Sub

Andere so:

Sub SchachtFestlegen()
Application.SendKeys „%di%o{tab 2}{down 2}{enter 2}“
End Sub

(Beide Codes von Herber gemopst)

Liegt wohl daran daß jeder Drucker unter Eigenschaften andere Möglichkeiten hat.

Im ersten Code sieht man daß Sendkeys seltsam ist, denn gelegentlich mu´ß man erst mit Sendkeys Daten lossschicken danach erst die Anwendung starten die die daten erhalten soll, irgendwie unlogisch, aber ist halt so, muß man bei jeder neuen Anwendung austesten.

Marion hat zu diesem Problem eine Riesen-Arbeit geschrieben
und dabei das Excel-Blatt via Word ausdrucken lassen. Dort
kann man, wie gesagt, die Fächer ohne weiteres ansteuern. Es
wird aber vor allem bei mehrseitigen Excel-Blättern
kompliziert.

Ich bin der Meinung, bei MS sollten die Word- und Excelprogrammierer mal öfter miteinander reden :smile:

Gruß
Reinhard

Grüezi anton

Kann man per Makro auf die Druckereigenschaften zugreifen?
Unser Drucker hat zwei Fächer (1 Fach normalpapier, 2 Fach
mit Briefkopf)

Ich benötige nämlich einen Ausdruck von Tabelle1 zuerst
einmal mit Briefkopf (Fach2), und danach 2weitere von Fach 1
(normalpapier)

geht das?

Wenn Du mit VBA arbeiten kannst und keine ‚Furcht‘ vor API’s hast, kannst Du ja mal die Codes von Michel Schwimmer zu diesem Thema ansehen:

http://michael-schwimmer.de/vba009.htm
http://michael-schwimmer.de/vba099.htm

Ansonsten kenne ich zu diesem Thema noch ein AddIn, welches das Wechseln des Druckerschachtes ermöglicht; vielleicht kannst Du dieses ja einbinden:

http://members.chello.nl/jvolk/keepitcool/files/MTpr…

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Hallo Reinhard.

Das mit den verschiedenen Drucker anlegen ist eine super Idee.
Nur leider kann ich den selben Drucker nur einmal anlegen.
Der PC überschreibt jedesmal den vorherigen Drucker, so das ich immer nur einen stehen habe.

Weißt du, wie das anderst geht?

Danke

Mfg KA

Das mit den verschiedenen Drucker anlegen ist eine super Idee.
Nur leider kann ich den selben Drucker nur einmal anlegen.
Der PC überschreibt jedesmal den vorherigen Drucker, so das
ich immer nur einen stehen habe.
Weißt du, wie das anderst geht?

Hallo Anton,
es muß gehen, habe das doch auch schon geschafft daß ein Drucker mehrmals eingetragen wurde.
War aber eher ein zufälliges Ergebnis bei Druckerinstallationsproblemen.
Aber es geht, Nepu und andere Treffer bei Google bestätigen das.
Probier halt mal rum.
Oder nenne mal BS und Drucker, ggfs. hat jmd vergleichbare Soft/Hardware und kann dir eine Step by Step anleitung basteln.
Gruß
Reinhard

Grüezi Krisam

Das mit den verschiedenen Drucker anlegen ist eine super
Idee.
Nur leider kann ich den selben Drucker nur einmal anlegen.
Der PC überschreibt jedesmal den vorherigen Drucker, so das
ich immer nur einen stehen habe.

Weißt du, wie das anderst geht?

Wie installierst Du denn den Drucker?
Bei einem Schritt im Assistenten kannst Du einen Namen für den Drucker festlegen. Der wird zwar vorgegeben, aber Du kannst ihn verändern.
Installiere den Drucker also mehrfahc mit z.B. ‚_Schacht1‘ ‚_Schacht2‘ als Zusatz und richte dann jeden in dessen Default-Einstellungen so ein wie Du ihn benannt hast.


Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -