Auf Bobs System weigert sich Excel, auf einem anderen Drucker als dem als Standard für das System festgelegten zu drucken. Dies geschieht nur in Excel, nicht in Word oder einer anderen installierten Anwendung. Um zu drucken, muss er den Standarddrucker vorübergehend auf den gewünschten Drucker ändern, drucken und anschließend daran denken, den Drucker zurückzusetzen. Bob fragt sich, warum er keine anderen Drucker auswählen kann.

Es kann verschiedene Ursachen für dieses Problem geben. Ein Abonnent berichtete, dass er das gleiche Problem hatte, es jedoch erst nach der Migration seines Büros auf Windows 7 64-Bit und unter Verwendung von Windows PrintServer auftrat. In ihrem Fall stellten sie fest, dass es sich um ein verstecktes Attribut in den Druckerwarteschlangen handelte, das das Problem verursachte, und sie konnten es nur beheben, indem sie mit dem Microsoft-Support sprachen.

Andere berichteten über das Problem, das auftrat, wenn bestimmte Add-Ins auf dem System installiert wurden. (Einer, insbesondere Microsoft Office Labs Search Command, wurde einige Male erwähnt.) Durch Deaktivieren des Add-Ins wurde das Problem behoben.

Es gibt hier eine gute Diskussion über das Problem und verschiedene Korrekturen:

http://answers.microsoft.com/en-us/office/forum/office_2010-excel/excel-2010-only-prints-to-the-default-printer/5b6beddd-f85d-4fda-ab2b-56c750f2028c

Sie sollten sicherstellen, dass dies in Ihrem Browser als einzelne URL eingegeben wird. es ist ziemlich lang.

Wenn keine der vorgeschlagenen Lösungen in Ihrer Situation funktioniert, können Sie versuchen, über Makros zu drucken. Warum? Weil Sie den festgelegten Standarddrucker im Makro einfach ändern und dann wieder ändern können. Dies geschieht mithilfe der ActivePrinter-Eigenschaft. Sie können den Namen des aktuellen Standarddruckers ermitteln und einer Variablen zuweisen, den Drucker ändern, dann drucken und schließlich den Drucker wieder ändern:

Dim sDefault As String sDefault = Application.ActivePrinter  'save current default printer Application.ActivePrinter = "XYZ SuperPrinter"

' do your printing Application.ActivePrinter = sDefault  'restore default

Sie müssen lediglich sicherstellen, dass Sie „XYZ SuperPrinter“ durch den tatsächlichen Namen des Druckers ersetzen, den Sie verwenden möchten. Sie können den Namen des Druckers ermitteln, indem Sie ihn als Standard (unter Windows) festlegen und dann im VBE-Sofortfenster den Namen des Druckers drucken:

? Application.ActivePrinter

Notieren Sie den Namen und achten Sie dabei auf Abstand und Großschreibung. Diesen Namen können Sie im Druckmakro verwenden.

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.

Dieser Tipp (12497) gilt für Microsoft Excel 2007, 2010, 2013 und 2016.