Sehr geschätzte Catia-Gemeinde,
mit Beitrag http://ww3.cad.de/foren/ubb/Forum137/HTML/000056.shtml#000008 komme ich meinem Ziel nicht näher,
PDFs eines Ordners entsprechend deren Größe auf dazu passenden Druckern per VBA-Makro zu plotten.
Für eine Word-VBA fand ich einige Beispiele, die dort mit nachstehendem Code hinlänglich funktionieren.
Bei folgendem Code kommt es in Catia zu Problemen:
Public 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
Public hWnd As Long
Public Const SW_MAXIMIZE = 3 ' Maximiert öffnen
Public Function DateiOeffnen(Aktion As String, Pfad As String, _
Ansicht As Long) As Boolean
Call ShellExecute(hWnd, Aktion, Pfad, "", "", Ansicht)
End Function
Sub CATMain() 'verschiedene Drucker
Dim Pfad1 As String, Pfad2 As String
Pfad1 = "C:\Users\Pietzonka\Desktop\PDF-Test\Test 3 L.pdf"
Pfad2 = "C:\Users\Pietzonka\Desktop\PDF-Test\Test 3 P.pdf"
Application.ActivePrinter = "\\WMPRINTSERVER.dpm.local\Oce PlotWave 450 - WPD2"
MsgBox "The name of the active printer is " & Application.ActivePrinter
DateiOeffnen "print", Pfad1, SW_MAXIMIZE
DateiOeffnen "print", Pfad2, SW_MAXIMIZE
End Sub
1.
Public 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
Hier müsste ich das in eine 64-bit-Anweisung ändern, habe davon aber keine Ahnung.
Ich kann mir denken, dass Ihr einen besseren Lösungsweg anbieten könnt.
Auch darüber würde ich mich sehr freuen.
MfG Stephan
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP