Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1828to1832
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Drucker mit VBA verwenden

Drucker mit VBA verwenden
03.05.2021 12:19:34
Andreas
Hi zusammen,
habe eine VBA, mit der ich Dokumente automatisch drucken lassen möchte.
Das Problem ist, dass mehrere Personen darauf zugreifen und es nutzen sollen, aber der Drucker andere Endungen bei den einzelnen Personen hat.
Sub Druck()
Dim strDruckerAktiv$, i%, max%, vz%, bz%, sStdDrucker$
sStdDrucker = Application.ActivePrinter
Application.ActivePrinter = "\\SRVADS01.beratex.intranet\TWT Briefpapier auf Ne08:"
strDruckerAktiv = Application.ActivePrinter
Bei den einen ist der Drucker auf Ne08 bei den anderen auf Ne10
Wenn ich die Endung streiche geht es bei niemandem mehr.
Woran liegt das, wie kann man das umgehen?
Vielen Dank vorab
Gruß Andreas

21
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Dirty Lösung
03.05.2021 12:35:33
Klaus
Hallo Andreas,
vor dem Problem bin ich auch mal verzweifelt und habe keine Lösung gefunden. Mein Kollege hat das dann ganz hemdsärmlig mit einer Error-Schleife gelöst:

Sub Printer_A4()
Dim i As Integer
On Error Resume Next
For i = 0 To 9
Application.ActivePrinter = "\\ABC123.xnet.FIRMENNAME\DRUCKERNAME_P1 auf Ne0" & i & ":"
If Err = 0 Then Exit For
Err.Clear
If i = 9 Then
MsgBox ("Bitte den A4-Drucker auswählen!")
Application.Dialogs(xlDialogPrinterSetup).Show
conA4 = Application.ActivePrinter
Exit For
End If
Next i
conA4 = Application.ActivePrinter
End Sub
Ich sag mal so: Nicht schön, aber es funktioniert.
Ich lass mal offen in der Hoffnung, dass jemand eine elegantere Lösung hat - die ich dann gern auch adaptieren würde :-)
LG,
Klaus M.
Anzeige
AW: Dirty Lösung
03.05.2021 13:44:30
Andreas
Hi Klaus,
habe folgenden Code von Nepumuk erhalten, er funktioniert und ist so wunderbar kurz : )
Dachte der interessiert dich vielleicht auch:
Worksheets("T.-Cert.").Range("A" & vz & ":H" & bz).PrintOut ActivePrinter:="\\SRVADS01.beratex.intranet\TWT Briefpapier"
Bei mir klappt es damit auf jeden Fall.
Gruß Andreas
AW: Drucker mit VBA verwenden
03.05.2021 12:37:36
onur
Mache eine Tabelle auf einem anderen Blatt, wo User und Drucker eingetragen sind (Hier auf Tabeele2).
Dan kannst du so den Drucker einstellen:

Application.ActivePrinter = WorksheetFunction.VLookup(Application.UserName, Sheets("Tabelle2").Range("A2:B20"), 2, False)
Userbild
Anzeige
bei mir ....
03.05.2021 12:38:57
Klaus
.... ändert sich das "NeoXX" eines Users gefühlt jeden zweiten Tag. Ich steck da aber nicht tief genug in der Netzwerk / Druckerwelt drin um das zu erklären, daher die seltsamte Error-Schleifen-Lösung.
LG,
Klaus M.
AW: bei mir ....
03.05.2021 12:40:43
onur
Und wieso schreibst du MIR das ? :)
AW: bei mir ....
03.05.2021 13:16:25
Klaus
Hi Onur,
Weil du die statische "SVERWEIS" Lösung gegeben hast - wollte darauf hinweisen, das diese bei mir nicht funktioniert. Aber jetzt haben wir ja eine Nepumuk-Lösung :-)
LG,
Klaus M.
AW: bei mir ....
03.05.2021 14:30:10
onur
"dass diese bei mir nicht funktioniert" - ist irrelevant, ob es bei dir nicht funktioniert, denn es geht um Andreas.
Anzeige
AW: bei mir ....
03.05.2021 14:40:39
Klaus
Aye, Sherrif. Sorry, ich bin erst seit 12 Jahren hier dabei - ich wusste nicht, dass die Diskussionskultur durch dich überprüft wird. Werde mich in Zukunft daran halten was du vorgibst.
Übrigens, Realnamenpflicht :-) Wenn du wirklich onur heißt, dann doch bitte Onur mit großem O.
LG,
Klaus M.
AW: bei mir ....
03.05.2021 14:46:43
onur
Was hat das mit Sherrif zu tun? DU überprüfst und bewertest doch offensichtlich Antworten von Helfern und NICHT ich.
So eine Antwort steht höchstens dem Andreas zu.
AW: bei mir ....
03.05.2021 14:55:34
Klaus
Onur, völlig ironiefrei:
Es ist gut, dass jemand die Diskussionsqualität und Forenregeln überwacht. Und du machst das gut!
Aber: solange Hans dich nicht offiziell zum Moderator ernannt hat, bist du halt "nur" ein selbsternannter Foren-Sherrif.
Und ich bin nicht Daniel, darum ist das hier mein letzter Post in diesem Zweig, ich lasse mich nicht zu einer unnötigen Endlosdiskussion hinreißen. Damit wir in Zukunft nicht weiter aneinander geraten und damit den Forenfrieden stören, möchte ich dich bitten mir bis auf weiteres keine Empfehlungen über die Forennutzung mehr zu machen oder zu bewerten was mir "zusteht", sonden meine Beiträge schlicht zu ignorieren.
Es sei denn, natürlich, Hans segnet deinen Moderatorposten ab. Was ich begrüßen würde, dem Forum würde es nur gut tun.
LG,
Klaus M.
Anzeige
Sheriff nicht Sherrif! owT ;-)
03.05.2021 15:00:55
Orthograph
Wieso, in "Dr. Schiwago" heißt es doch ...
04.05.2021 12:57:16
lupo1
... Onur Sherrif. Oder so ähnlich. Oder?
Ein bisschen Spaß muss erlaubt sein.
du meinst jetzt nicht die "Oma Sharif", oder
04.05.2021 15:21:23
Daniel
...
wenn du den Forumsfrieden willst
03.05.2021 16:00:50
Daniel
Hallo Klaus
dann unterlass es bitte, über andere Forumsteilnehmer mit irgendwelchen Behauptungen herzuziehen, die du wahrscheinlich selber nur irgendwo gelesen hast und und jetzt wie ein Gerücht nachplapperst.
die Forenregeln hast du hoffentlich gelesen und ja, sie gelten auch für dich.
ich erwarte deine Entschuldigung.
Gruß Daniel
Das war jetzt unnötig, denn, ...
03.05.2021 17:37:04
lupo1
... mit Verlaub, es wissen alle um die Richtigkeit der "Klaus'schen Danielhypothese".
Halte Dich einfach an Hans' Ermahnung vom 12.3.21. Bin raus.
Anzeige
Mobbern muss man mal auf die Finger klopfen
03.05.2021 18:03:29
Daniel
das glaube ich nicht.
zumal ich ja nicht allein endlos diskutieren kann, sondern dazu brauchts immer noch eine zweite Person, sonst wäre es ja ein Monolog und eine Diskussion.
diese hätte man hier genauso nennen können, z.B. dich LUPO, oder LUC, oder wer sonst noch als Endlosdisskutierere immer vorne mit dabei ist.
AW: Drucker mit VBA verwenden
03.05.2021 12:38:03
Armin
Hallo Andreas,
versuche es einmal damit:

Private Sub BenutzerDrucken()
Dim strPrinterName As String
Dim Druckwahl As Boolean
strPrinterName = Application.ActivePrinter
Druckwahl = Application.Dialogs(xlDialogPrinterSetup).Show
If Druckwahl = False Then Exit Sub
ActiveSheet.PageSetup.Orientation = xlPortrait
'je nach dem ob man es braucht
'ActiveSheet.PageSetup.PrintArea = "$A$1:$J$48"
ActiveSheet.PrintOut
Application.ActivePrinter = strPrinterName
ActiveSheet.PageSetup.PrintArea = ""
End Sub
Gruß Armin
Anzeige
AW: Drucker mit VBA verwenden
03.05.2021 13:00:50
Nepumuk
Hallo Andreas,
die Endung benötigst du nicht. Einfach so:
Code:

[Cc]

Public Sub Test() ActiveSheet.PrintOut ActivePrinter:="\\SRVADS01.beratex.intranet\TWT Briefpapier" End Sub

Gruß
Nepumuk
Anzeige
AW: Drucker mit VBA verwenden
03.05.2021 13:30:54
Andreas
Hi Nepukum,
das wäre mir auch am liebsten, aber leider wird dann direkt das ganze Tabellenblatt gedruckt.
Mein Fehler, hätte besser den ganzen Code gepostet. Der sieht nämlich wie folgt aus und gibt variabel vor wie viele der 15 Seiten gedruckt werden sollen.
Nimm ich deinen Code, kommen leider immer direkt alle 15 Seiten.
Dafür hast du doch sicher auch noch eine Lösung oder : ) ?

Sub DruckTestCertifikat()
Dim strDruckerAktiv$, i%, max%, vz%, bz%, sStdDrucker$
sStdDrucker = Application.ActivePrinter
ActiveSheet.PrintOut ActivePrinter:="\\SRVADS01.beratex.intranet\TWT Briefpapier"
'Application.ActivePrinter = "\\SRVADS01.beratex.intranet\TWT Briefpapier auf Ne08:"
strDruckerAktiv = Application.ActivePrinter
max = Sheets("DQ").Range("AH2").Value
If max  15 Then max = 15
For i = 1 To max
vz = i * 51 - 50: bz = i * 51
Worksheets("T.-Cert.").Range("A" & vz & ":H" & bz).PrintOut Copies:=1 'PrintPreview
Next i
Application.ActivePrinter = sStdDrucker
End Sub
Gruß Andreas
Anzeige
AW: Drucker mit VBA verwenden
03.05.2021 13:34:05
Nepumuk
Hallo Andreas,
na dann einfach so:

Worksheets("T.-Cert.").Range("A" & vz & ":H" & bz).PrintOut ActivePrinter:="\\SRVADS01.beratex.intranet\TWT Briefpapier"
Copies:=1 brauchst du nicht, 1 ist Standard.
Gruß
Nepumuk
AW: Drucker mit VBA verwenden
03.05.2021 13:47:38
Andreas
Hi Nepumuk,
dachte ich hab dir schon geantwortet, aber irgendwie finde ich meinen Post nicht mehr.
Auf jeden Fall einfach nochmal zur Sicherheit, du bist genial : )
Vielen Dank für die Lösung, sie funktioniert.
Gruß Andreas

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige