Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Liste von Dateien ausdrucken (verschiedene Drucker ansteuern)

Mitglied: Hai-Eck

Hai-Eck (Level 1) - Jetzt verbinden

29.01.2007, aktualisiert 01.02.2007, 9835 Aufrufe, 6 Kommentare

Hallo alle!

Ich habe ein excel-vba-file, welches mir Dateien ausdruckt!

In den Zellen A2 bis Ax befinden sich die Dateinamen samt zugehöriger Pfad
In den Zellen B2 bis Bn befindet sich das Format (A3 oder A4) - je nach dem sollte dann der passende Drucker reagieren.

Folgende Probleme haben sich eingestellt:
1) es druckt mir IMMER auf meinem STANDARDDRUCKER aus!
2) die Dateien werden in chaotischer Reihenfolge gedruckt

ich hab schon viel herumprobiert, irgendwie ist bei mir da der Wurm drinnen!

Hoffentlich könnt Ihr mir helfen!

Danke vorab!
ciao ciao
Markus

PS: bin VBA-Voll-Anfänger, das Programm habe ich nicht ganz alleine erstellt

hier das Hauptprogramm:

Option Explicit

Sub Haupt()
Dim ws As Worksheet
Dim pdf As String
Dim format As String
Dim zeile As Long

Set ws = ThisWorkbook.Worksheets(1)
ws.Columns("C").ClearContents
zeile = 2
Do Until IsEmpty(ws.Cells(zeile, "A"))
format = ws.Cells(zeile, "B")
pdf = ws.Cells(zeile, "A")
If Dir(pdf) <> "" Then

If format = "A4" Then
Application.ActivePrinter = "Minolta PagePro 20 auf \\Nthajek\kb_mpp20"
PDF_Datei_drucken datei:=pdf
End If

If format = "A3" Then
Application.ActivePrinter = "Minolta PagePro 20 (A3) auf \\Nthajek\kb_mpp20"
PDF_Datei_drucken datei:=pdf
End If

Else
ws.Cells(zeile, "C") = "NV"
End If
zeile = zeile + 1
Loop
End Sub

Erklärung: Minolta PagePro 20 auf \\Nthajek\kb_mpp20
Ich habe per Makro einen Druckauftrag aufgezeichnet und dann hat er mir diese Syntax ausgespuckt!!

hier die Druck-Prozedur:

Option Explicit

Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" ( _
ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long _
) As Long

Sub PDF_Datei_drucken(datei As String)
ShellExecute 0&, "print", datei, vbNullString, vbNullString, vbNormalFocus
End Sub
Mitglied: bastla
29.01.2007 um 20:12 Uhr
Hallo Hai-Eck!

Zu Problem 1)
Die Anweisung "Application.ActivePrinter" legt für die "Applikation" Excel einen Drucker fest - Dein Druck erfolgt aber über das Betriebssystem (vereinfacht gesagt simulierst Du einen Klick auf das Explorerkontextmenü "Drucken" einer Datei) - daher die Verwendung des Standarddruckers.

Bevor ich mich mit Problem 2) befasse, noch eine Frage: Warum verwendest Du Excel für diese Aufgabe? Neulich hatten wir etwas Ähnliches für Word-Dateien (Lösungsansatz siehe hier) - das könnte vielleicht auch für Dich passen ...

Grüße
bastla
Bitte warten ..
Mitglied: Hai-Eck
30.01.2007 um 17:05 Uhr
Hi Bastla,

Danke für die Antwort!
sodala ... ich hab mir den word-LINK mal angesehen ... verstehe aber meist nur bahnhof

warum excel?
Output = in Excel-Form
abhängig vom Format, sollte ich diese (ca. 50 Dokumente bzw. PDF-Dateien) an verschiedene Drucker senden.


Danke im voraus!
Markus
Bitte warten ..
Mitglied: bastla
30.01.2007 um 21:48 Uhr
Hallo Hai-Eck!

Das "Bahnhofs"-Script dient dazu, alle Word-Dateien eines Ordners (vorgegeben war: einer Diskette) auszudrucken - für Dich würde das bedeuten, einfach alle Dateien, die mit einem bestimmten Drucker gedruckt werden sollen, in einem Ordner zu sammeln und den ganzen Ordner drucken zu lassen - die einzig erforderliche Anpassung wäre, nicht auf den Dateityp ".doc" zu prüfen.

Output = in Excel-Form
Leider verstehe ich nicht, was Du damit meinst , aber egal: Dein oben gepostetes Script müsste eigentlich nur den Standarddrucker neu setzen, dann sollte der Ausdruck klappen. Versuch dazu folgendes Unterprogramm:
01.
Sub SetStandardPrinter(strPrinterName As String)
02.
Dim objScriptingNetwork As Object
03.

04.
Set objScriptingNetwork = CreateObject("WScript.Network")
05.
objScriptingNetwork.SetDefaultPrinter strPrinterName
06.

07.
Set objScriptingNetwork = Nothing
08.
End Sub
Im Programmcode wäre dann die Zeile
01.
Application.ActivePrinter = "Minolta PagePro 20 auf \\Nthajek\kb_mpp20"
zu ersetzen durch
01.
 <b>SetStandardPrinter</b> "Minolta PagePro 20 auf \\Nthajek\kb_mpp20"
(natürlich auch für die A3-Variante). Am Ende (nach Loop) könntest Du mit einer weiteren "SetStandardPrinter"-Anweisung dafür sorgen, dass für andere Anwendungen wieder der richtige Drucker eingestellt wird.

HTH
bastla
Bitte warten ..
Mitglied: Hai-Eck
31.01.2007 um 15:16 Uhr
hai Bastla!!

WAAAHNSINN!!
endlich!

ich bin da schon wirklich sehr lange dran ...
und hab schon einige Foren verrückt gemacht mit dieser Sache!

lange Rede - kurzer Sinn: hat geklappt - yeah!!

output=excelform meint sich:
als input für diese Druck-Aktion bekomme ich die Daten immer in Excel-Form, drum.


wenn du mir die 2te Sache auch noch hinkriegst, dann schmeiß ich doch tatsächlich wider Erwarten meinen Drucker doch nicht aus dem Fenster ...
... ich war schon oft knapp davor!
;)


Danke
ciao
Markus
Bitte warten ..
Mitglied: bastla
31.01.2007 um 15:39 Uhr
Hallo Hai-Eck!

hat geklappt - yeah!!
My pleasure (hat eh ein wenig gedauert) ...

Mit "zweite Sache" meinst Du die Reihenfolge? Leider weiß ich darüber noch gar nix (außer, dass diese eher "unkonventionell" zu sein scheint ).

Vielleicht kannst Du ja vor dem Drucken die Dateililste nach dem zu verwendenden Drucker vorsortieren - also alle A4-Drucke zuerst, danach jene für Format A3. Um es reproduzierbar zu machen, könntest Du vor dem Sortieren in einer freien Spalte noch eine laufende Nummer eintragen, um innerhalb der Formate die Reihenfolge beibehalten bzw zur ursprünglichen Reihung zurückkehren zu können (indem Du nach dieser Nummer sortierst).

Das Script arbeitet eigentlich die Liste brav vom ersten bis zum letzten Eintrag durch. Was siehst Du eigentlich in der Druckerwarteschlange?

Grüße
bastla

P.S.:
dann schmeiß ich doch tatsächlich wider Erwarten meinen Drucker doch nicht aus dem Fenster ...
Contenance - an der Hardware sollte es ja nicht liegen, und denk an die Unannehmlichkeiten mit der/dem / für die/den Passantin/Passanten, die/den Du dabei vielleicht getroffen hättest ...
Bitte warten ..
Mitglied: Hai-Eck
01.02.2007 um 17:05 Uhr
Hi Bastla,

1) überredet! Drucker bleibt drinnen

2)
die Möglichkeit A4/A3 zu trennen hab ich sicher, es handelt sich aber um ein und den selben Drucker (nur Format/Blattgröße verändert) und ich will die Dokumente nachher nicht mehr sortieren.

ich hab 2 Feldversuche gestartet, mit jeweils anderen Spool-Einstellungen
hier das Ergebnis:

Größe: Dateigröße in KB
Soll: Sollreihenfolge
Ist1: Istreihenfolge (Spooleinstellungen: Druckaufträge in Warteschlange stellen)
Ist2: Istreihenfolge (Spooleinstellungen: Druckaufträge an Drucker leiten)

Größe -> Soll -> Ist1 -> Ist2
52 -> 1 -> 1 -> 1
121 -> 2 -> 4 -> 5
54 -> 3 -> 3 -> 12
31 -> 4 -> 2 -> 3
88 -> 5 -> 8 -> 10
49 -> 6 -> 7 -> 11
103 -> 7 -> 6 -> 6
61 -> 8 -> 5 -> 2
47 -> 9 -> 12 -> 7
46 -> 10 -> 11 -> 9
145 -> 11 -> 10 -> 8
44 -> 12 -> 9 -> 4

in der Warteschlange ist ca. genau dieses Chaos dann auch ersichtlich ...


Vielleicht sollte man eine Zeitverzögerung einbauen? solche Druckaktionen werden eh nach Feierabend gestartet ...
oder, noch besser: so per handshake-befehl?
wenn drucker zu drucken beginnt, dann meldung ins excel
im excel: do nothing until meldung, dann erst nächster druckbefehl!


Danke im voraus!!
Markus
Bitte warten ..
Ähnliche Inhalte
Drucker und Scanner

Druck aus MS Office, Grafiken stehen im Ausdruck auf dem Kopf

gelöst Frage von departure69Drucker und Scanner7 Kommentare

Hallo. Druckserver: W2K16 x64 Std., Warteschlangen der betroffenen Drucker sind AD-published. Drucker: HP Laserjet 4050 - Treiber ist der, ...

Microsoft

Nach Ausdruck ein PDF der Datei automatisch erstellen

Frage von manuelwMicrosoft2 Kommentare

Hallo, ich habe eine Frage einer Bekannten zu der ich auch keine Lösung weiß. Sie möchte gerne, wenn sie ...

Batch & Shell

TODO List in ( Batch )

gelöst Frage von clragonBatch & Shell2 Kommentare

Hallo Liebe Forum-Nutzer Ich habe heute versucht, mir eine Batch zu schreiben die Notizen anzeigt, aka eine Todo Liste ...

Entwicklung

DevExpress Ausdruck generieren

gelöst Frage von TranministratorEntwicklung2 Kommentare

Hello All! weiß jemand ob man mit dem Ausdrucksgenerator so etwas hinbekommt? Vorher: TX - BB - Stirnbänder/Sonnenbl./Masken - ...

Neue Wissensbeiträge
Windows 10

Windows 10 V1809: Rollout ist gestartet - kommt per Windows Update

Information von kgborn vor 10 StundenWindows 101 Kommentar

Eine kurze Information für die Admins, die Windows 10 im Programm haben. Microsoft hat die letzte Baustelle (die Inkompatibilität ...

Sicherheit

Heise Beitrag Passwort-Sammlung mit 773 Millionen Online-Konten im Netz aufgetaucht

Information von Penny.Cilin vor 13 StundenSicherheit5 Kommentare

Auf Heise Online ist folgender Beitrag veröffentlicht worden: Heise Beitrag passwörter geleakt Ich bin mir jetzt nicht ganz sicher, ...

Microsoft Office
TEAMS - Skype for business
Tipp von Nebellicht vor 13 StundenMicrosoft Office

Hallo, ms ersetzt Skype for business durch TEAMS. Also, nicht wundern wenn mit der OFFICE365 Umgebung kein Skype for ...

Windows 10

Windows 10: Cortana und die Suche gehen bald wieder eigene Wege

Information von Frank vor 16 StundenWindows 102 Kommentare

Microsoft hat einen neuen Insider Build von Windows 10 veröffentlicht (Fast Ring, Version 18317), wo die digitale Assistentin "Cortana" ...

Heiß diskutierte Inhalte
Windows Server
Uhren gehen immer wieder falsch
Frage von killtecWindows Server23 Kommentare

Hallo, ich habe folgende Konstellation: 1. Physischer DC Div. Virtuelle DC's auf Hyper-V Servern Die Hyper-V-Server, der Physische DC ...

Switche und Hubs
Medienkonverter mit 12 oder 24 Ports gesucht
Frage von wmuellerSwitche und Hubs21 Kommentare

Guten Morgen, ich bin auf der Suche nach einem größeren Medienkonverter, der "stumpf" 1:1 die Ports auf über ein ...

Debian
OpenSSH Login mit Public Key schlägt fehl, mit Passwort funktioniert
gelöst Frage von DKowalkeDebian19 Kommentare

Hallo zusammen, ich hatte hier schon nach einer Anleitung für einen SFTP Server mit Linux gefragt, habe dort auch ...

Windows 10
VM wächst schnell von 14 auf 35 GB an - warum?
Frage von degudejungWindows 1018 Kommentare

Hallo, ich bin ein Freund schlanker VMs und setze daher gerne mit dem Erscheinen einer neuen Win10 Version - ...