Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Name des Standarddruckers in VBA?
zurück: Format übernahme nach Wechsel in ein neues Frame weiter: VBA Name der Arbeitsblätter ändern Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
micwil
Wd- und XL-User


Verfasst am:
13. Jan 2005, 14:46
Rufname:

Name des Standarddruckers in VBA? - Name des Standarddruckers in VBA?

Nach oben
       

Wie kann ich in VBA (VBA 6.0, Wd2000) den Namen des Windows-Standarddruckers ermitteln? Ich würde ihn als Inhalt einer Textvariablen brauchen.
Danke schon im Voraus für guten Rat.
M. W.
Lisa
Moderator; Word seit Word 5.0 (für DOS)


Verfasst am:
06. Nov 2005, 23:52
Rufname:
Wohnort: Leipzig


AW: Name des Standarddruckers in VBA? - AW: Name des Standarddruckers in VBA?

Nach oben
       

Hallo Micwil und für die Nachwelt,

einfacher, als du denkst:
Code:
  MsgBox Application.ActivePrinter

_________________
Sei doch so nett und gib eine Rückmeldung, ob es klappt!
Gruß, Lisa

Guter Rat ist teuer!
micwil
Wd- und XL-User


Verfasst am:
07. Nov 2005, 00:44
Rufname:

Leider daneben - Leider daneben

Nach oben
       

Hallo Lisa,

schön wär's gewesen, aber der Standarddrucker (wird in Windows festgelegt) ist eben nicht dasselbe wie der "aktive" Printer. Der kann in einer Anwendung (z. B. Word) aus verschiedenen installierten Druckern ausgewählt werden und ist dann der ActivePrinter.

Für den Standarddrucker scheint es in VBA kein Objekt zu geben.

Gruß,
M. W.
Nepumuk
VB / VBA Programmierer


Verfasst am:
07. Nov 2005, 06:07
Rufname: Max
Wohnort: Dusseldoof

AW: Name des Standarddruckers in VBA? - AW: Name des Standarddruckers in VBA?

Nach oben
       

Hallo Micwil,


Zitat:
Für den Standarddrucker scheint es in VBA kein Objekt zu geben.


wer behauptet das?

Code:

Option Explicit

Private Declare Function GetProfileString Lib "kernel32" Alias "GetProfileStringA" ( _
    ByVal lpAppName As String, _
    ByVal lpKeyName As String, _
    ByVal lpDefault As String, _
    ByVal lpReturnedString As String, _
    ByVal nSize As Long) As Long

Public Sub test()
    Dim strPrinterName As String, strDriver As String, strPort As String
    Call GetStdPrinterName(strPrinterName, strDriver, strPort)
    MsgBox strPrinterName & " / " & strDriver & " / " & strPort
End Sub

Private Sub GetStdPrinterName(strPrinterName As String, strDriver As String, strPort As String)
    Dim Buffer As String
    Dim lngReturn1 As Long, lngReturn2 As Long, lngReturn3 As Long
    Buffer = Space(8192)
    lngReturn1 = GetProfileString("windows", "Device", "", Buffer, Len(Buffer))
    If lngReturn1 Then
        Buffer = Mid$(Buffer, 1, lngReturn1)
        lngReturn2 = InStr(Buffer, ",")
        strPrinterName = Mid$(Buffer, 1, lngReturn2 - 1)
        lngReturn3 = InStr(lngReturn2 + 1, Buffer, ",")
        strDriver = Mid$(Buffer, lngReturn2 + 1, lngReturn3 - lngReturn2 - 1)
        strPort = Mid$(Buffer, lngReturn3 + 1)
    Else
        strPrinterName = ""
        strDriver = ""
        strPort = ""
    End If
End Sub

_________________
De fontibus non est disputandum

Gruß
Nepumuk Cool
Lisa
Moderator; Word seit Word 5.0 (für DOS)


Verfasst am:
07. Nov 2005, 14:03
Rufname:
Wohnort: Leipzig

AW: Name des Standarddruckers in VBA? - AW: Name des Standarddruckers in VBA?

Nach oben
       

Wow, Nepumuk, wenn wir dich nicht hätten!!!
Macht immer großen Spaß, von dir zu lernen!

Gruß
Lisa
Lisa
Moderator; Word seit Word 5.0 (für DOS)


Verfasst am:
14. März 2009, 18:29
Rufname:
Wohnort: Leipzig

AW: Name des Standarddruckers in VBA? - AW: Name des Standarddruckers in VBA?

Nach oben
       Version: Office 97

Hallo nochmal,

nur zur Vollständigkeit, ob nun Bug oder Absicht: In Word 97 liefert ActivePrinter tatsächlich den Windows-Standarddrucker. Und auch beim Setzen von ActivePrinter in Word wird der Windows-Standarddrucker umgestellt (!).

Das Verhalten ist also ganz anders als in Excel und anderen Anwendungen.
Wenn man in Word den ActivePrinter in VBA umstellt, ist man gut beraten, vor dem Ändern den Standarddrucker mit ActivePrinter auszulesen und ihn nach dem Ausdruck wieder zurückzusetzen. Oder man nutzt den alten WordBasic-Befehl, siehe hier:

Word Standarddrucker nicht veärndern

Gruß
Lisa
arch3r
Gast


Verfasst am:
24. Aug 2012, 15:07
Rufname:


AW: Name des Standarddruckers in VBA? - AW: Name des Standarddruckers in VBA?

Nach oben
       Version: Office 2003

hallo,
ich weiß, schon lange nichts mehr in diesem thread passiert, aber ich habe eine Frage zum nutzen des Standarddruckers als Variable.
Dies ist ein Button, der ein Fax automatisch über das am PC installierte Fax-Gerät verschicken soll, ohne den aktiven, also den ausgewählten Drucker, zu ändern.
Das Fax-Gerät hat den gleichen Namen, wie der Drucker, nur um die Endung "FAX" erweitert.

Sub Fax()
Dim Standarddrucker As String
Standarddrucker = ActivePrinter

Dim Fax As String
Fax = Standdarddrucker & "FAX"

ActivePrinter = Fax
Application.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= _
wdPrintDocumentContent, Copies:=1, Pages:="", PageType:=wdPrintAllPages, _
Collate:=True, Background:=False, PrintToFile:=False

ActivePrinter = Standarddrucker
End Sub

Mit [Standarddrucker = "Druckername"] anstatt "ActivePrinter" funktioniert das, aber ich kann nciht bei allen Rechnern den Drucker von Hand eintragen, desswegen den Standarddrucker um die Endung "FAX" erweitern, wie bekomme ich es also hin, dass der den ActivePrinter um den Text erweitert?
wäre echt nett noch eine Antwort zu bekommen Smile

mfg max
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Word VBA Programmierung (Makros): Name einer Bookmark auslesen 5 lasetga 126 16. Dez 2013, 10:58
MarkMH_K Name einer Bookmark auslesen
Keine neuen Beiträge Word VBA Programmierung (Makros): Serienbrief auf PDF ausgeben und dabei Name der Datei ändern 4 tutenchamun 122 02. Dez 2013, 17:19
mumpel Serienbrief auf PDF ausgeben und dabei Name der Datei ändern
Keine neuen Beiträge Word VBA Programmierung (Makros): Variable: Name und Vorname tauschen 2 drehorgel 217 02. Apr 2013, 19:13
r.mueller Variable: Name und Vorname tauschen
Keine neuen Beiträge Word VBA Programmierung (Makros): Word 2010 Fehler beim kompilieren: Mehrdeutiger Name: 2 TobiHan 410 20. Aug 2012, 12:45
TobiHan Word 2010 Fehler beim kompilieren: Mehrdeutiger Name:
Keine neuen Beiträge Word VBA Programmierung (Makros): Textmarken benennen: Name der aktiven Markierung 5 Thomas Kirsch 302 08. Aug 2012, 12:53
Thomas Kirsch Textmarken benennen: Name der aktiven Markierung
Keine neuen Beiträge Word VBA Programmierung (Makros): Makro (name) von CommandButton 2 difa1 411 20. Okt 2011, 17:56
Gast Makro (name) von CommandButton
Keine neuen Beiträge Word Hilfe: Bilder Name + Pfad anzeigen 1 a-m-g 700 20. Apr 2011, 12:14
Gast Bilder Name + Pfad anzeigen
Keine neuen Beiträge Word Gestaltungselemente: Fußzeile: Name, Seitenzahl, Datum 4 donscheffler 2849 26. März 2011, 22:57
Bengy Fußzeile: Name, Seitenzahl, Datum
Keine neuen Beiträge Word Hilfe: [Hilfe] Text (Name) eingegeben und im Doc plazieren 0 Gast 201 20. Jan 2011, 22:23
Gast [Hilfe] Text (Name) eingegeben und im Doc plazieren
Keine neuen Beiträge Word VBA Programmierung (Makros): Word-Datei unter anderen Name woanders speichern lassen 4 SaCoMa 4039 28. Dez 2010, 19:28
SaCoMa Word-Datei unter anderen Name woanders speichern lassen
Keine neuen Beiträge Word VBA Programmierung (Makros): Speichern mit Datum Uhrzeit und Dokumenten Name 12 andruschs 3354 13. Jan 2010, 08:51
HouseFan Speichern mit Datum Uhrzeit und Dokumenten Name
Keine neuen Beiträge Word Serienbriefe: Serienbrief aus xls nur Datensätze anzeigen wenn Name gleich 0 means 1308 08. Jan 2010, 09:11
means Serienbrief aus xls nur Datensätze anzeigen wenn Name gleich
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Excel Tricks