Hide Table of Contents

Change Drafting Standard to Custom Drafting Standard (VBA)

This example shows how to change the drafting standard to a custom drafting standard.

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

' Preconditions: Model document is open and a

'                SolidWorks-supplied drafting standard is set.

'

' Postconditions: Drafting standard is set to the

'                specified custom drafting standard.

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

Option Explicit

 

Dim swApp           As SldWorks.SldWorks

Dim swModel         As SldWorks.ModelDoc2

Dim swModExt        As SldWorks.ModelDocExtension

Dim bRetVal         As Boolean

Dim sPath           As String

Dim sFileName       As String

Dim vDSNames        As Variant

Dim i               As Integer

 

Sub main()

 

Set swApp = Application.SldWorks

Set swModel = swApp.ActiveDoc

Set swModExt = swModel.Extension

 

'Get current SolidWorks-supplied drafting standard

Debug.Print "Current drafting standard..."

Debug.Print "  (Standard, NoOptionSpecified) before = " & swModExt.GetUserPreferenceInteger(SwConst.swDetailingDimensionStandard, SwConst.swDetailingNoOptionSpecified)

Debug.Print "  (StandardName, NoOptionSpecified) before = " & swModExt.GetUserPreferenceString(SwConst.swDetailingDimensionStandardName, SwConst.swDetailingNoOptionSpecified)

Debug.Print "  "

 

' Get drafting standard names

' Only the SolidWorks-supplied drafting standards

' are returned; any custom drafting standards are

' not returned

Debug.Print "SolidWorks-supplied drafting standards..."

vDSNames = swModExt.GetDraftingStandardNames

PrintNames vDSNames

Debug.Print "  "

 

' Load custom drafting standard

bRetVal = swModExt.LoadDraftingStandard("C:\test\MyANSI.sldstd") ' Substitute your custom drafting standard path and filename

 

' Get custom drafting standard just-specified

Debug.Print "Standard that custom drafting standard is based on or derived from..."

Debug.Print "  (Standard, NoOptionSpecified) after custom loaded = " & swModExt.GetUserPreferenceInteger(SwConst.swDetailingDimensionStandard, SwConst.swDetailingNoOptionSpecified)

Debug.Print "  (StandardName, NoOptionSpecified) after custom loaded = " & swModExt.GetUserPreferenceString(SwConst.swDetailingDimensionStandardName, SwConst.swDetailingNoOptionSpecified)

Debug.Print "  "

 

' Get drafting standard names

' Remember, only the SolidWorks-supplied drafting standards

' are returned; any custom drafting standards are

' not returned

Debug.Print "SolidWorks-supplied drafting standards..."

vDSNames = swModExt.GetDraftingStandardNames

PrintNames vDSNames

Debug.Print "  "

 

End Sub

 

Function PrintNames(ByVal vDSNames As Variant)

For i = LBound(vDSNames) To UBound(vDSNames)

    Debug.Print "  " & vDSNames(i)

Next i

End Function



Provide feedback on this topic

SOLIDWORKS welcomes your feedback concerning the presentation, accuracy, and thoroughness of the documentation. Use the form below to send your comments and suggestions about this topic directly to our documentation team. The documentation team cannot answer technical support questions. Click here for information about technical support.

* Required

 
*Email:  
Subject:   Feedback on Help Topics
Page:   Change Drafting Standard to Custom Example VB
*Comment:  
*   I acknowledge I have read and I hereby accept the privacy policy under which my Personal Data will be used by Dassault Systèmes

Print Topic

Select the scope of content to print:

x

We have detected you are using a browser version older than Internet Explorer 7. For optimized display, we suggest upgrading your browser to Internet Explorer 7 or newer.

 Never show this message again
x

Web Help Content Version: API Help (English only) 2013 SP05

To disable Web help from within SOLIDWORKS and use local help instead, click Help > Use SOLIDWORKS Web Help.

To report problems encountered with the Web help interface and search, contact your local support representative. To provide feedback on individual help topics, use the “Feedback on this topic” link on the individual topic page.