ich habe ein Problem mit einem Makro, von dem ich dachte, dass ich es durch Eure Hilfe erledigt ist, da ich schon ein Script erhalten habe. Doch zunächst mein Problem:
Ich möchte ein verstecktes Tabellenblatt 2x auf dem Netzwerkdrucker "xyz123" ausdrucken. Von den unterschiedlichen PCs im Netzwerk geht es aber leider nicht, da der angesteuerter Drucker auf jedem Rechner eine andere Zuweisung hat, wie zum Beispiel:
Application.ActivePrinter = "\\XY1234\AB987 auf Ne03:" oder ... auf Ne05:" oder ... auf Ne02:" usw., usw.
Sheets("Lieferschein").Visible = True
Sheets("Lieferschein").PrintOut Copies:=2
Sheets("Lieferschein").Visible = False
Ich bräuchte somit erst ein Makro welches herausfindet, wie die Adresse des Druckers \\XY1234\AB987 auf dem gerade verwendeten PC lautet und diese Adresse dann entsprechend verwendet.
Rainer war so nett und hat mir folgendes Script zur Verfügung gestellt, welches ich in mein Makro eingearbeitet habe:
Dim i As Long
Dim pString As String
pString = "\\XY1234\AB987 auf Ne"
Application.displayalerts = false
On Error Resume Next
For i = 1 To 64
Application.ActivePrinter = "" & pString & Format(i, "00") & ":"
Next i
If InStr(1, Application.ActivePrinter, pString) = 0 Then
MsgBox "Der Drucker: " & pString & " existiert auf diesem Rechner nicht", vbOKOnly, " _
Fehler"
End If
On Error GoTo 0
Application.displayalerts = True
Sheets("Lieferschein").Visible = True
Sheets("Lieferschein").PrintOut Copies:=2
Sheets("Lieferschein").Visible = False
Erst dachte ich, dass es funktioniert, aber das war leider ein Irrtum.
Die nachfolgende Lösung von Bernd hat leider auch nicht funktioniert:
Sheets("Lieferschein").PrintOut Copies:=2, ActivePrinter:="\\XY1234\AB987"
Nun habe ich als Alternative das Script zur Auswahl des Druckers von Rudi genutzt:
Dim p, p1
p1 = ActivePrinter
p = Application.Dialogs(xlDialogPrinterSetup).Show
If p = False Then
Cancel = True
Exit Sub
End If
ActivePrinter = p1
Aber auch das steuert seltsamerweise, obwohl ich dort den richtigen Drucker auswählen kann, nur den Standarddrucker an.
Ich bin echt ratlos und kenne das gar nicht, dass es gar nicht hinzubekommen ist.
Hat noch jemand einen Tipp für mich?
Vielen Dank schon jetzt!
Gruß
MARTIN