SolidWorks2014怎么实现图号名称分离?

当我们创建好一个Solidworks 零件以后,为了更快速把零件的“图号和名称”分别填入自定义属性中,以方便出工程图时调用到标题栏中。用solidworks宏编写整理这篇说明,现实把”CTJ300-03-10 连杆座“ 分离出"CTJ300-03-10"和"连杆座",以供参考。

一、宏代码

1、新建宏代码:工具————新建

在文件名中输入:图号分离.swp ;点击保存,进入宏编辑界面;

2、认识宏编辑界面:

1)工程信息

2)编程区域

3)做一个写代码前的准备工作,把2区域的内容Ctrl+A 全选删除。

3、写代码:复制如下代码,写到上图的2区域;

'从这里开始复制:

'定义solidwork

Dim swApp As Object

Dim Part As Object

Dim SelMgr As Object

Dim boolstatus As Boolean

Dim longstatus As Long, longwarnings As Long

Dim Feature As Object

Dim a As Integer

Dim b As String

Dim m As String

Dim e As String

Dim k As String

Dim t As String

Dim c As String

Dim j As Integer

Dim strmat As String

Dim tempvalue As String

Sub main()

'link solidworks

Set swApp = Application.SldWorks

Set Part = swApp.ActiveDoc

Set SelMgr = Part.SelectionManager

swApp.ActiveDoc.ActiveView.FrameState = 1

'设定变量

c = swApp.ActiveDoc.GetTitle() '零件名

strmat = Chr(34) + Trim("SW-Material" + "@") + c + Chr(34)

blnretval = Part.DeleteCustomInfo2("", "代号")

blnretval = Part.DeleteCustomInfo2("", "名称")

blnretval = Part.DeleteCustomInfo2("", "材料")

a = InStr(c, " ") - 1      '重点:分隔标识符,这里是一个空格

If a > 0 Then

    k = Left(c, a)

    t = Left(LTrim(e), 3)

    If t = "GBT" Then

        e = "GB/T" + Mid(k, 4)

    Else

        e = k

    End If

    b = Mid(c, a + 2)

    t = Right(c, 7)

    If t = ".SLDPRT" Or t = ".SLDASM" Then

        j = Len(b) - 7

    Else

        j = Len(b)

    End If

    m = Left(b, j)

End If

blnretval = Part.AddCustomInfo3("", "代号", swCustomInfoText, e)  '代号

blnretval = Part.AddCustomInfo3("", "名称", swCustomInfoText, m)  '名称

blnretval = Part.AddCustomInfo3("", "表面处理", swCustomInfoText, " ")

End Sub

4、保存退出。第一部分做到这就算完成了。下面是创建宏按钮;

二、创建宏按钮

1、返回Solidworks工作界面,进入自定义工具栏:工具——自定义;象牙白泽,择命令选项卡,找到宏 ,把新建宏按钮拖到工具栏的空白处;

2、弹出自定义宏按钮对话框:

1)选择上面保存的宏文件;

2)指定一个图标,以便在工具栏中显示;

3)指定一个指示的名称,以便在工具栏中显示;

3、点击确定,退出自定义宏按钮,完成制作。

4、新建零件命名规则:代号+空格+名称

注意事项:

代号中不能出现空格,宏以第一个空格为分隔符。