ds-blue-logo
Preview  |  SOLIDWORKS USER FORUM
Use your SOLIDWORKS ID or 3DEXPERIENCE ID to log in.
RBRyan Bigler28/01/2014

I use 1 to save the current drawing to a dxf, pdf, and I have added in a save function for the drawing file itself.  I was wondering if you could help me with a macro for saving each drawing sheet into different files, but with naming the file after what the sheet name is?  I don't need one with revisions or anything of that sort.  I would also like to be able to save the pdf files with separate files rather than having it all in the same file.  This makes it easier to send different files to different machine shops.   Down below is the macro that I currently use.  I have since modified it to save as DXF instead of DWG as well as to do a save of the file when done.  Any help would be greatly appreciated.

Thanks,

Ryan

'File Save As PDF & DWG.swp -------------03/18/13

'Description: Macro to save active drawing as PDF and DWG.

'Precondition: Any active drawing to be saved.

'Postcondition: Active drawing will be saved as PDF and DWG in the same location as drawing.

' Please back up your data before use and USE AT OWN RISK

' This macro is provided as is.  No claims, support, refund, safety net, or

' warranties are expressed or implied.  By using this macro and/or its code in

' any way whatsoever, the user and any entities which the user represents,

' agree to hold the authors free of any and all liability.  Free distribution

' and use of this code in other free works is welcome.  If any portion of

' this code is used in other works, credit to the authors must be placed in

' that work within a user viewable location (e.g., macro header).  All other

' forms of distribution (i.e., not free, fee for delivery, etc) are prohibited

' without the expressed written consent by the authors.  Use at your own risk!

' ------------------------------------------------------------------------------

' Written by: Deepak Gupta (http://gupta9665.wordpress.com/)

' -------------------------------------------------------------------------------

Dim swApp       As SldWorks.SldWorks
Dim swModel     As SldWorks.ModelDoc2
Dim swDraw      As SldWorks.DrawingDoc
Dim Filepath    As String
Dim FileName    As String

Dim boolstatus As Boolean

Dim longstatus As Long, longwarnings As Long

Sub main()

Set swApp = Application.SldWorks

Set swModel = swApp.ActiveDoc

' Check to see if a drawing is loaded.

If (swModel Is Nothing) Or (swModel.GetType <> swDocDRAWING) Then

swApp.SendMsgToUser ("To be used for drawings only, Open a drawing first and then TRY!")

' If no model currently loaded, then exit

Exit Sub

End If

Set swDraw = swModel

Filepath = Left(swDraw.GetPathName, InStrRev(swDraw.GetPathName, "\"))

FileName = Left(swDraw.GetTitle, Len(swDraw.GetTitle) - 9)

swDraw.SaveAs (Filepath + FileName + ".PDF")

swDraw.SaveAs (Filepath + FileName + ".DXF")

swDraw.Save

End Sub