SolidWorks机械工程师网——最大的SolidWorks学习平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

看下这个是不是开了挂 搞的 图号 名称分离?

查看数: 1164 | 评论数: 9 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2018-9-11 19:23

正文摘要:

零件 故意用 图号 加 双引号 名称 出图的时候 名字变成了只有图号 而且 标题栏 也是 只显示 图号~ 怎么弄的?? 还有左侧 他这种 子集 树状列表 具体 怎么操作? 好处是 方便图纸整理 规范。

回复

EvanLiu 发表于 2018-9-11 19:46:48
进来学习!
lwd 发表于 2018-9-11 19:44:56
学习了,谢谢!
FrancKim 发表于 2018-9-11 19:44:39
他这个 双引号 没有显示在  配置说明的括号里啊 ?直接在 代号后面的
找不到北0.0 发表于 2018-9-11 19:39:31
当然这里截图显示是上面代码经过编译后的效果。


myhema911 发表于 2018-9-11 19:31:51
下面是分离到配置(备注:间隔符同样是空格号,并可以根据自己需求编辑)

'定义sw



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

Dim Part As Object

Dim swApp As SldWorks.SldWorks

Dim swModelDoc As SldWorks.ModelDoc2

Dim swConfig As SldWorks.Configuration

Dim CustPropMgr As SldWorks.CustomPropertyManager

Dim swModel As SldWorks.ModelDoc2



Sub main()

Set swApp = Application.SldWorks

Set swModelDoc = swApp.ActiveDoc

Set swConfig = swModelDoc.ConfigurationManager.ActiveConfiguration

Set swModel = swApp.ActiveDoc

Set CustPropMgr = swModel.Extension.CustomPropertyManager

(swModel.ConfigurationManager.ActiveConfiguration.Name) '配置特定延伸



'设定变量

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

strmat = Chr(34) + Trim(&quot;SW-Material&quot; + &quot;@&quot;) + c + Chr(34)

a = InStr(c, &quot; &quot;) - 1 '重点:分隔标识符,这里是一个空格,也可换成其他符号

If a > 0 Then

k = Left(c, a)

t = Left(LTrim(e), 3)

If t = &quot;GBT&quot; Then

e = &quot;GB/T&quot; + Mid(k, 4)

Else

e = k

End If

b = Mid(c, a + 2)

t = Right(c, 7)

If t = &quot;.SLDPRT&quot; Or t = &quot;.SLDASM&quot; Or t = &quot;.sldprt&quot; Or t = &quot;.sldasm&quot; Then

j = Len(b) - 7  '消除后缀(区分大小写,即含4种)

Else

j = Len(b)

End If

m = Left(b, j)

End If

'删除栏

CustPropMgr.Delete (&quot;Number&quot;)

CustPropMgr.Delete (&quot;作者&quot;)

CustPropMgr.Delete (&quot;图样名称&quot;)






'新增

CustPropMgr.Add2 &quot;Number&quot;, swCustomInfoText, e

CustPropMgr.Add2 &quot;作者&quot;, swCustomInfoText, &quot;刘腾qq420221716&quot;

CustPropMgr.Add2 &quot;图样名称&quot;, swCustomInfoText,  m




End Sub
xieshuai890721 发表于 2018-9-11 19:29:56
这个双引号显示的是“配置说明”,并非是前面几个大侠说的图号分离。从SW原则来说,零件名跟工程图文件名肯定是同样的。细看楼主的的截图就知道前面几位高手没说到点上。
关于图号分离问题,是很赞同楼上几位的。下面是图号分离宏(分离到自定义,备注:中间间隔符是空格号。可以根据自己需求改动)
'定义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(&quot;SW-Material&quot; + &quot;@&quot;) + c + Chr(34)
blnretval = Part.DeleteCustomInfo2(&quot;&quot;, &quot;代号&quot;)
blnretval = Part.DeleteCustomInfo2(&quot;&quot;, &quot;名称&quot;)
blnretval = Part.DeleteCustomInfo2(&quot;&quot;, &quot;材料&quot;)
a = InStr(c, &quot; &quot;) - 1      '重点:分隔标识符,这里是一个空格
If a > 0 Then
    k = Left(c, a)
    t = Left(LTrim(e), 3)
    If t = &quot;GBT&quot; Then
        e = &quot;GB/T&quot; + Mid(k, 4)
    Else
        e = k
    End If
    b = Mid(c, a + 2)
    t = Right(c, 7)
    If t = &quot;.SLDPRT&quot; Or t = &quot;.SLDASM&quot; Then
        j = Len(b) - 7
    Else
        j = Len(b)
    End If
    m = Left(b, j)
End If
blnretval = Part.AddCustomInfo3(&quot;&quot;, &quot;代号&quot;, swCustomInfoText, e)  '代号
blnretval = Part.AddCustomInfo3(&quot;&quot;, &quot;名称&quot;, swCustomInfoText, m)  '名称
blnretval = Part.AddCustomInfo3(&quot;&quot;, &quot;作者&quot;, swCustomInfoText, &quot; 刘腾qq420221716&quot;)
End Sub






soft214 发表于 2018-9-11 19:27:43
经常大批量且有规范的时候,可以这么做,一劳永逸,正常是简单做个模板。难得出图的情况下,怎么玩都无所谓了
bossgo 发表于 2018-9-11 19:24:00
只是个普通的宏命令而已,不要大惊小怪,对于这种的同学我都是赞一个,工作有方法
readygo 发表于 2018-9-11 19:23:44
看看这个零件的属性自定义里名称和图号那里的信息是什么?工程图纸中的信息是来自于零件属性里的信息。软件就是个聪明的大傻瓜,你让它做什么,它就做什么。也只做到那个地步。

SOLIDWORKS 2023 机械设计从入门到精通

手机版|小黑屋| GMT+8, 2025-6-3 05:07 , Processed in 0.165426 second(s), 28 queries , Memcache On.

SolidWorks机械工程师网 ( 鲁ICP备14025122号-2 ) 鲁公网安备 37028502190335号

声明:本网言论纯属发表者个人意见,与本网立场无关。
如涉版权,可发邮件: admin@swbbsc.com

快速回复 返回顶部 返回列表