Get Locations and Names of Document Templates Example (VBA)
This example shows how to get the locations and names of SolidWorks
document templates for the SolidWorks session.
'------------------------------------
'
' Preconditions: None
'
' Postconditions: None
'
'-----------------------------------
Option Explicit
Public Enum swDocumentTypes_e
swDocNONE
= 0 '
Used to
be TYPE_NONE
swDocPART
= 1 '
Used to
be TYPE_PART
swDocASSEMBLY
= 2 '
Used to
be TYPE_ASSEMBLY
swDocDRAWING
= 3 '
Used to
be TYPE_DRAWING
End Enum
Public Enum swDwgPaperSizes_e
swDwgPaperAsize
= 0
swDwgPaperAsizeVertical
= 1
swDwgPaperBsize
= 2
swDwgPaperCsize
= 3
swDwgPaperDsize
= 4
swDwgPaperEsize
= 5
swDwgPaperA4size
= 6
swDwgPaperA4sizeVertical
= 7
swDwgPaperA3size
= 8
swDwgPaperA2size
= 9
swDwgPaperA1size
= 10
swDwgPaperA0size
= 11
swDwgPapersUserDefined
= 12
End Enum
Public Enum swUserPreferenceStringValue_e
swFileLocationsDocumentTemplates
= 6
swFileLocationsSheetFormat
= 7
swDefaultTemplatePart
= 8
swDefaultTemplateAssembly
= 9
swDefaultTemplateDrawing
= 10
End Enum
Sub main()
Dim
swApp As SldWorks.SldWorks
Set
swApp = Application.SldWorks
Debug.Print
"FileLocationsDocumentTemplates = " & swApp.GetUserPreferenceStringValue(swFileLocationsDocumentTemplates)
Debug.Print
"FileLocationsSheetFormat =
" & swApp.GetUserPreferenceStringValue(swFileLocationsSheetFormat)
Debug.Print
"DefaultTemplatePart =
" & swApp.GetUserPreferenceStringValue(swDefaultTemplatePart)
Debug.Print
"DefaultTemplateAssembly =
" & swApp.GetUserPreferenceStringValue(swDefaultTemplateAssembly)
Debug.Print
"DefaultTemplateDrawing =
" & swApp.GetUserPreferenceStringValue(swDefaultTemplateDrawing)
Debug.Print
""
Debug.Print
"Draw template = " & swApp.GetDocumentTemplate(swDocDRAWING,
"X:\am\sldworks\data\Temp_a.slddrt", swDwgPaperAsize, 0#, 0#)
Debug.Print
"Part template = " & swApp.GetDocumentTemplate(swDocPART,
"", 0, 0#, 0#)
Debug.Print
"Assy template = " & swApp.GetDocumentTemplate(swDocASSEMBLY,
"", 0, 0#, 0#)
Debug.Print
""
Debug.Print
"Draw templates:"
Debug.Print
" A
=
" & swApp.GetDocumentTemplate(swDocDRAWING,
"", swDwgPaperAsize, 0#, 0#)
Debug.Print
" A
vert =
" & swApp.GetDocumentTemplate(swDocDRAWING,
"", swDwgPaperAsizeVertical, 0#, 0#)
Debug.Print
" B
=
" & swApp.GetDocumentTemplate(swDocDRAWING,
"", swDwgPaperBsize, 0#, 0#)
Debug.Print
" C
=
" & swApp.GetDocumentTemplate(swDocDRAWING,
"", swDwgPaperCsize, 0#, 0#)
Debug.Print
" D
=
" & swApp.GetDocumentTemplate(swDocDRAWING,
"", swDwgPaperDsize, 0#, 0#)
Debug.Print
" E
=
" & swApp.GetDocumentTemplate(swDocDRAWING,
"", swDwgPaperEsize, 0#, 0#)
Debug.Print
" A4
=
" & swApp.GetDocumentTemplate(swDocDRAWING,
"", swDwgPaperA4size, 0#, 0#)
Debug.Print
" A4
vert =
" & swApp.GetDocumentTemplate(swDocDRAWING,
"", swDwgPaperA4sizeVertical, 0#, 0#)
Debug.Print
" A3
=
" & swApp.GetDocumentTemplate(swDocDRAWING,
"", swDwgPaperA3size, 0#, 0#)
Debug.Print
" A2
=
" & swApp.GetDocumentTemplate(swDocDRAWING,
"", swDwgPaperA2size, 0#, 0#)
Debug.Print
" A1
=
" & swApp.GetDocumentTemplate(swDocDRAWING,
"", swDwgPaperA1size, 0#, 0#)
Debug.Print
" A0
=
" & swApp.GetDocumentTemplate(swDocDRAWING,
"", swDwgPaperA0size, 0#, 0#)
End Sub
'------------------------------------