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

标题: 宏:焊件切割清单中自动增加『单重』和『总重』的属性+3!(限額5位) [打印本页]

作者: zhengwust    时间: 2009-12-15 00:31
标题: 宏:焊件切割清单中自动增加『单重』和『总重』的属性+3!(限額5位)
如果用过焊件,相信必会感到再加上重量属性时非常不便,
相关帖子:SolidWorks机械工程师论坛 92楼的例子
如果焊件切割清单中存在100项的话,就要分别增加重量属性100次了,
一旦面对设变,那就更糟糕透了。
只要采取一些二次开发的伎俩,编写一个简单的
每次更新的时候运行一下,那就无后顾之忧了。
如有谁人可以顺利应用并展示效果,加三分起!(限額5位)
Option Explicit
Dim swApp As SldWorks.SldWorks
Dim Part As SldWorks.ModelDoc2
Dim thisFeat As SldWorks.feature
Dim thisSubFeat As SldWorks.feature
Dim cutFolder As Object
Dim BodyCount As Integer
Dim fn As String
Dim pn As String
Dim custPropMgr As SldWorks.CustomPropertyManager
Dim propNames As Variant
Dim vName As Variant
Dim propName As String
Dim Value As String
Dim resolvedValue As String
Dim TotalW As Double
Sub main()
Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc
Set thisFeat = Part.FirstFeature
Do While Not thisFeat Is Nothing
If thisFeat.GetTypeName = "SolidBodyFolder" Then
thisFeat.GetSpecificFeature2.UpdateCutList
End If
Set thisSubFeat = thisFeat.GetFirstSubFeature
Do While Not thisSubFeat Is Nothing
If thisSubFeat.GetTypeName = "CutListFolder" Then
Set cutFolder = thisSubFeat.GetSpecificFeature2
End If
If Not cutFolder Is Nothing Then
BodyCount = cutFolder.GetBodyCount
If BodyCount > 0 Then
Set custPropMgr = thisSubFeat.CustomPropertyManager
If Not custPropMgr Is Nothing Then
custPropMgr.Delete "Total Weight"
custPropMgr.Delete "Weight"
fn = thisSubFeat.Name
pn = Part.GetTitle
custPropMgr.Add "Weight", "Text", Chr(34) & "SW-Mass@@@" & fn & "@" & pn & Chr(34)
propNames = custPropMgr.GetNames
If Not IsEmpty(propNames) Then
For Each vName In propNames
propName = vName
custPropMgr.Get2 propName, Value, resolvedValue
If propName = "Weight" Then TotalW = resolvedValue
Next vName
End If
custPropMgr.Add "Total Weight", "Text", Format(BodyCount * TotalW, "0.00")
End If
End If
End If
Set thisSubFeat = thisSubFeat.GetNextSubFeature
Loop
Set thisFeat = thisFeat.GetNextFeature
Loop
End Sub
作者: cslanyue    时间: 2009-12-15 00:31
顶大侠 教程 谢谢教学
二次开发不懂
作者: blueskypw    时间: 2009-12-15 00:31
只有顶顶了,不懂红
作者: 霭630    时间: 2009-12-15 00:31
回帖,顶一下看
作者: 春桃1723    时间: 2009-12-15 00:32
顶大侠师
作者: gum    时间: 2009-12-15 00:32
俺也不懂
作者: heart001    时间: 2009-12-15 00:33
就那么难?学习啊
作者: konge    时间: 2009-12-15 00:33
不会吧,S大不是已经参加了ICT举办的二次开发技术交流会吗?怎么还会说不懂啊?
其实也不需要懂得什么,要尝试,只要复制内码到VBA编辑器即可运行,这是基本功啊。
由版主带头说不懂,这是不良现象,菜鸟们更会大条理由要求喂食。
作者: only75203    时间: 2009-12-15 00:33
不好意思,我试下子
作者: lbsuwjwwak    时间: 2009-12-15 00:33
学习学习再学习
作者: clarkbigpie    时间: 2009-12-15 00:33
如此回复!!!!
作者: sgxap    时间: 2009-12-15 00:34
学习一下,谢谢
作者: 凄凄切切    时间: 2009-12-15 00:34
copy/paste/run

作者: 百家韶容    时间: 2009-12-15 00:34
怎么樓上的的 Total Weight 比起 Weight 還要輕,難道悶鳥在騙淫!
作者: designer0408    时间: 2009-12-15 00:34
原来就是少了个文件后缀名而已啦

作者: ivwfjepl    时间: 2009-12-15 00:35
操作动画,请大侠验收,俺加个单位上去
GIF的图片可以上传就是不插入啊。下载附件解压后,如下图,右击鼠标运行

Weldments.rar (23.96 KB, 下载次数: 73)
作者: trulytry    时间: 2009-12-15 00:35
楼上的版本太高,打不开啊
作者: hc2003    时间: 2009-12-15 00:35
再顶顶
作者: impedance    时间: 2009-12-15 00:35
回帖

作者: freecek    时间: 2009-12-15 00:35
看看...........
作者: yy326    时间: 2009-12-15 00:35
学习学习再学习
作者: lifestyle    时间: 2009-12-15 00:36
顶下!!!!!
作者: newhaier    时间: 2009-12-15 00:36
来看看……
作者: yushan    时间: 2009-12-15 00:36
有这种好事,狂顶啊
作者: 柳娅芝    时间: 2009-12-15 00:36
学习了,谢大侠
作者: leo    时间: 2009-12-15 00:37
期待蕉大的成果
作者: hui7279    时间: 2009-12-15 00:37
红,黄都好难。
发现偶现在好菜,什么不会了
作者: sunnywinter    时间: 2009-12-15 00:37
还是不太明白怎么用,我到编辑里把代码粘贴运行了,保存为文件后,在建模窗口增加了一块实体后运行没反映,很奇怪啊! 大侠能否提示下啊。


作者: Bigpig    时间: 2009-12-15 00:37
還以為有成果,空歡喜一場
作者: woolf24    时间: 2009-12-15 00:37
我可以来试一下吗
作者: 烽(_少    时间: 2009-12-15 00:38
这是个好东东,谢谢大大
作者: 411183343    时间: 2009-12-15 00:38
刚才试验了一下,
发现运行后没动静
反复测试未果。
结果把SW改为英文界面,有结果了
正在找变通的方案
(使用了SW2007和SW2010,测试结果是一样的)
******************************************************************************************
使用 CustomPropertyManager.Add2 方法代替原来的 Add 方法可以解决问题。
顺便看说一下,Add2方法是SW2007才开始支持的方法,希望有使用更老版本的同志们再测试一下

作者: wyzright    时间: 2009-12-15 00:38
非常感谢gneful兄帮忙反复测试!
渔樵兄啊,您兄有救了
作者: qiuyong    时间: 2009-12-15 00:38
其实 Add 和 Add2 两个方法功能是相同的,仅仅是第二个输入参数的类型不同
所以,使用简体中文版的同志们,应该这样改程序
custPropMgr.Add "Weight", "Text", Chr(34) & "SW-Mass@@@" & fn & "@" & pn & Chr(34)
custPropMgr.Add "Weight", "文字", Chr(34) & "SW-Mass@@@" & fn & "@" & pn & Chr(34)
将 text 改为 “文字”就可以了
可能SW也发现了Add方法的漏洞,才创建了新的方法 Add2
作者: 姚喜运    时间: 2009-12-15 00:38
老大,出现这个情况啊,后面不会了

作者: diudiuqqqq    时间: 2009-12-15 00:38
终于搞定了,谢谢gneful兄提示啊

作者: dalincai    时间: 2009-12-15 00:38
实在太菜了,不懂怎样搞
作者: pa2ben    时间: 2009-12-15 00:39
一时高兴把总重忘改了,嘿嘿,这下就对了

作者: cuicuicui2007    时间: 2009-12-15 00:39
看看。学习一下!
作者: xaswan    时间: 2009-12-15 00:39
多谢大侠
作者: Blue·k_真    时间: 2009-12-15 00:40
太深了,不懂红
作者: gaolucky    时间: 2009-12-15 00:40
都有提示了,白拣的分,呵呵!
作者: ruocan    时间: 2009-12-15 00:40
占位了,占位了
作者: AKing    时间: 2009-12-15 00:40
不懂,希望高手指点
作者: 战网机器人    时间: 2009-12-15 00:40
還有一個加3分的名額啊!
作者: wgh123987    时间: 2009-12-15 00:40
这回要好好学习一下
作者: zxw573691    时间: 2009-12-15 00:41
占位做一个,不过那有一句总是过不了的,做了一点点改动,大侠PP


作者: canon75    时间: 2009-12-15 00:41
学习下大侠的作法
作者: cilssy    时间: 2009-12-15 00:41
是不是还有得加分的啊
作者: mpuing    时间: 2009-12-15 00:41
!不懂!学习一下!
作者: jakcyhan    时间: 2009-12-15 00:42
本帖隐藏的内容需要回复才可以浏览
作者: airuimissing    时间: 2009-12-15 00:42
再顶起来看看情况怎样了
作者: yinhao1981    时间: 2009-12-15 00:42
期待周兄的好消息
作者: wmnick    时间: 2009-12-15 00:42
谢了。。学习下。。
作者: guojunhai    时间: 2009-12-15 00:42
还有什么简单的法子吗??
作者: hawk123    时间: 2009-12-15 00:43
学习学习再学习
作者: fsh1898    时间: 2009-12-15 00:43

看看再说~~~~
作者: basic1399    时间: 2009-12-15 00:43
不懂 看看~~~~
作者: 风雨同粥    时间: 2009-12-15 00:44
学习一下!xian
作者: 蜜湖    时间: 2009-12-15 00:45
学习一下!xian zhi chi
作者: liang_ch    时间: 2009-12-15 00:45
可能是D版的问题,那总是有一句是过不了的
作者: 皓月3533    时间: 2009-12-15 00:46
屎大呀!怎么不加分给闷鸟呀?...............
作者: 2020-mark    时间: 2009-12-15 00:46
OK了
作者: hezaixun    时间: 2009-12-15 00:46
下载下来看看看上去很好的
作者: 〆至丄温情    时间: 2009-12-15 00:46
看看大侠的好东西。
作者: po1718    时间: 2009-12-15 00:47
不懂 等详解
作者: xahxxl    时间: 2009-12-15 00:47
D版和RP一样,都是终极法宝,因为它可以回答所有的问题
作者: 金芝    时间: 2009-12-15 00:48

希望学习!
作者: jwge    时间: 2009-12-15 00:48
好东西一定要学习
作者: wgm521    时间: 2009-12-15 00:48
学习学习再学习
作者: scs19840404    时间: 2009-12-15 00:48
学习学习再学习
作者: heyjl    时间: 2009-12-15 00:48
怎么使用
作者: cogito    时间: 2009-12-15 00:49
向大侠学习
作者: inof    时间: 2009-12-15 00:49
俺也不懂
作者: apollomq    时间: 2009-12-15 00:50
谢谢,顶一些
作者: louislaw    时间: 2009-12-15 00:50
大大大大大大好利害
作者: littlejuan    时间: 2009-12-15 00:50
回帖是对楼主最大的支持,也是一种美德!
作者: jiangxuehui    时间: 2009-12-15 00:50
惭愧,俺还j是不会用这个东东
作者: wosunxl    时间: 2009-12-15 00:51
樓主對於的開發想必有些心得了,我是來學習開發
作者: 听点、Music    时间: 2009-12-15 00:51
回帖,顶一下看
作者: zengyu7723    时间: 2009-12-15 00:51
!不懂!学习一下
作者: uid9yt5mnq    时间: 2009-12-15 00:51
看一下大侠的高招。
作者: 情義永恆    时间: 2009-12-15 00:52
正在寻找切割清单的教程
作者: wwd-yl    时间: 2009-12-15 00:52
回帖   顶顶~~~~
作者: andy2007    时间: 2009-12-15 00:53
学习下。。
作者: phoenix    时间: 2009-12-15 00:53
顶一下!!
作者: xurongyu    时间: 2009-12-15 00:53
怎么用啊?????
作者: liangh    时间: 2009-12-15 00:53
谢谢分享,我非常需要这方面的资料,希望多上传
作者: zhengtingjun    时间: 2009-12-15 00:54
谢谢大侠
作者: xushifu210    时间: 2009-12-15 00:54
向楼主学习。
作者: xubenqi    时间: 2009-12-15 00:54
下载试试!
作者: 爱中华134    时间: 2009-12-15 00:55
学习学习再学习
作者: m0686dax47    时间: 2009-12-15 00:55
很好很好很好很好很好很好
作者: ABC◇◆◇    时间: 2009-12-15 00:56
有做出来的了嘛?
作者: akmary    时间: 2009-12-15 00:56
向楼主学习
作者: bd5u885431    时间: 2009-12-15 00:57
好久没有接受版大的教诲了
作者: lixiujun    时间: 2009-12-15 00:57
LET ME SEE IT
作者: 1620017    时间: 2009-12-15 00:58
我来学习一下,渴望很久了!
作者: mjlseesea    时间: 2009-12-15 00:58
hao haohaohaohaoh
作者: lichangliang    时间: 2009-12-15 00:58
kankan




欢迎光临 SolidWorks机械工程师网——最大的SolidWorks学习平台 (https://www.swbbsc.com/) Powered by Discuz! X3.2