Print Drawing Document to File Example (VBA)
This example shows how to print a drawing document to a file.
'-----------------------------------------------------
'
' Preconditions: Drawing document is open.
'
' Postconditions: Drawing document printed to file.
'
'------------------------------------------------------
Option Explicit
Sub main()
'
Printer
Const
SWPrinter As
String = "\\DOPEY\HP4100-TRAIN1"
Dim
swApp As
SldWorks.SldWorks
Dim
swModel As
SldWorks.ModelDoc2
Dim
swDocExt As
SldWorks.ModelDocExtension
Dim
swDraw As
SldWorks.DrawingDoc
Dim
PathName As
String
Dim
PrintFileName As
String
Dim
nPrintSheets(1) As
Long
Dim
vPrintSheets As
Variant
Dim
DefPrinter As
String
Dim
i As
Long
Set
swApp = Application.SldWorks
Set
swModel = swApp.ActiveDoc
Set
swDocExt = swModel.Extension
Set
swDraw = swModel
'
Strip off SolidWorks file extension (.sldxxx)
PathName
= swModel.GetPathName
PathName
= Left(PathName, Len(PathName) - 7)
For
i = 0 To swDraw.GetSheetCount
- 1
'
Generate print filename based on sheet number
'
For example, if drawing document is gears.slddrw and contains
'
one sheet, then the print filename is gears0.prn
PrintFileName
= PathName & Trim(Str(i)) & ".prn"
'
Print out one sheet at a time
nPrintSheets(0)
= i + 1
vPrintSheets
= nPrintSheets
swDocExt.PrintOut2 (vPrintSheets), 1, False,
SWPrinter, PrintFileName
Next
i
End Sub
'-----------------------------------------------------