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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

好品数字
好品数字
查看: 1322511|回复: 56
打印 上一主题 下一主题

工程图中用宏填写切割清单每行的总重

  [复制链接]

10

主题

61

帖子

88

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
208
QQ
跳转到指定楼层
楼主
发表于 2016-7-2 15:33:51 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
  前段时间,根据帮助,学会了用把切割清单里每个零件的总重写入到属性中。解决了手工填写每行焊件总重的问题。
  用了一段时间,感觉这种写入总重的方式还是有些不妥的地方:修改了焊件的尺寸后,每次都要运行把总重写入属性里。如果忘记运行,那么工程图中切割清单里每行的总重就是错误的。
  为避免每次修改焊件尺寸都要运行写入总重的弊端,就考虑用把每行总重的计算公式,直接写在工程图切割清单,总重的那一单元格中。
  用我可怜的 E 文知识,在 API 帮助里查询了许久,终于找到了工程图切割清单中填写内容的代码。
  独乐乐不如众乐乐,这里把代码分享一下:

    Option Explicit
    Dim swApp As SldWorks.SldWorks
    Dim swDraw As SldWorks.DrawingDoc
    Dim swView As SldWorks.View
    Dim swTable As SldWorks.TableAnnotation
    Dim nNumRow As Long
    Dim i As Long
    Sub main()
    Set swApp = Application.SldWorks
    Set swDraw = swApp.ActiveDoc
    Set swView = swDraw.GetFirstView
    Do While Not swView Is Nothing
    Set swTable = swView.GetFirstTableAnnotation
    Do While Not swTable Is Nothing
    nNumRow = swTable.RowCount '获取切割清单行数
    For i = 0 To nNumRow - 2
    swTable.Text(i, 6) = "={2}D" & i + 1 & "*F" & i + 1 '写入总重方程式到切割清单
    Next i
    Set swTable = swTable.GetNext
    Loop
    Set swView = swView.GetNextView
    Loop
    End Sub

复制代码
如果不愿意复制粘贴,那就下载这个吧:
工程图切割清单填写每行焊件总重.rar (6.48 KB, 下载次数: 291)
这是运行的效果:

  因为切割清单里没有材料明细表那样给列添加方程式的功能,以往,总重那一栏只能手工填入方程式来计算。只有几行倒是可以手工完成,几十行填起来就很累了。就算手工把几十行填写完,如果增加或减少了行,单元格的行号发生了变化,但方程式里写的行号不会像 Excel 里那样同步发生变化,这些变化了的行又得逐一填写计算总重的方程式
  用来填写总重的方程式就很方便,一键就搞定。
  由于总重用的是方程式来计算,单重变化后总重也会同步变化,这样就避免了前面提到的弊端。只要切割清单里没有增加或减少行的话,就可以不用再运行来写入总重。即使行发生变化,也只需运行一下,即刻就搞定。
  这困扰我很久的问题,也算是基本解决了。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏11 转播转播 分享教程|习题|模型|技巧 点赞点赞1 拍砖拍砖
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复

使用道具 举报

16

主题

86

帖子

100

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
286
QQ
沙发
发表于 2016-7-2 15:34:06 | 只看该作者
很不错,还是应该向师傅多学习,极不懂的地方多问问,对自己也所帮助提高,在此还应万分感谢师傅。
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复 支持 反对

使用道具 举报

6

主题

62

帖子

42

金币

天使

Rank: 2Rank: 2

积分
143
QQ
板凳
发表于 2016-7-2 15:40:54 | 只看该作者
谢谢分享好方法,给楼主一个大大的赞。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

15

主题

62

帖子

107

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
244
QQ
地板
发表于 2016-7-2 15:41:38 | 只看该作者
感谢热心分享
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

12

主题

52

帖子

78

金币

天使

Rank: 2Rank: 2

积分
190
QQ
5#
发表于 2016-7-2 15:44:14 | 只看该作者

   经典案例图书
不错实用的工具
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

12

主题

73

帖子

70

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
211
QQ
6#
发表于 2016-7-2 15:44:56 | 只看该作者
讚一個!舉一反三!謝謝樓主分享。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

14

主题

63

帖子

138

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
278
QQ
7#
发表于 2016-7-2 15:49:49 | 只看该作者

   经典案例图书
感谢的大力支持!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

15

主题

82

帖子

86

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
264
QQ
8#
发表于 2016-7-2 15:51:29 | 只看该作者
很实用的工具,谢楼主!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

14

主题

74

帖子

84

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
224
QQ
9#
发表于 2016-7-2 15:52:30 | 只看该作者
其實,樓主可以搜一下「常駐」及「特徵」,大王都有很完整說明及教學
一來無需在工程中圖再咝辛硪粋
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

14

主题

67

帖子

82

金币

天使

Rank: 2Rank: 2

积分
192
QQ
10#
发表于 2016-7-2 15:53:34 | 只看该作者
『常驻』和『特征』的资料:
https://www.swbbsc.com/forum.php? ... 683&_dsign=45a267f7
感觉用常驻来更新比特征要好一些,常驻切换窗口就运行一下,这样就不用手动去更新总重了,真正做到了一劳永逸。
非常感谢提示!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

16

主题

74

帖子

96

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
251
QQ
11#
发表于 2016-7-2 15:53:56 | 只看该作者
这个16的代码在12中运行出问题,提示如图

SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

11

主题

77

帖子

54

金币

天使

Rank: 2Rank: 2

积分
187
QQ
12#
发表于 2016-7-2 15:55:41 | 只看该作者
已解决,是我自己拷贝代码的过程中一些乱码一同拷入,没删干净导致不认。
已正常运行,多谢楼主了
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

10

主题

71

帖子

94

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
236
QQ
13#
发表于 2016-7-2 15:56:01 | 只看该作者
对于焊接切割清单计算总重的这个问题,在别网有一个能彻底解决总重的问题,而且如果配合常驻还能一劳永逸,楼主研究的精神是好,但是如果想彻底解决这个问题,还是建议楼主去拜读的,[总重],相信楼主会深有感触。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

17

主题

70

帖子

124

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
275
QQ
14#
发表于 2016-7-2 15:56:14 | 只看该作者
觉得好奇怪!
我在焊接件的模板属性制作时,先添加焊接->添加属性,如图

画好焊件
设置材料,子实体的属性自动出现

看总重在文件属性

没有什么难度的啊
具体效果
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

12

主题

77

帖子

83

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
211
QQ
15#
发表于 2016-7-2 15:57:36 | 只看该作者
加入QQ群
参与讨论和学习

SolidWorks技术交流群

或扫描二维码加入

材料明细表和焊件切割清单的区别在于,焊件切割清单可以直接提取焊件的轮廓属性(如果需要甚至还可以直接提取某一焊接件长度),比如说,“∠5*5"但是用材料明细表就不能达到这个目的。。。而且,对于专业做焊接结构的人来说,焊接清单比材料切割清单好很多很多。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

13

主题

63

帖子

93

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
219
QQ
16#
发表于 2016-7-2 15:59:59 | 只看该作者

   经典案例图书
你好  我下载了你上传的压缩包   然后在工程图里点工具    运行  选择到解压后的代码   点击运行怎么提示找不到工程或库     我用的2015版的
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

7

帖子

34

金币

天使

Rank: 2Rank: 2

积分
97

最佳新人

17#
发表于 2016-7-31 17:08:37 来自手机 | 只看该作者
加入QQ群
参与讨论和学习

SolidWorks技术交流群

或扫描二维码加入

非常感谢楼主
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

9

主题

322

帖子

255

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1785

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

18#
发表于 2016-8-8 11:56:59 | 只看该作者

   经典案例图书
Option Explicit
Dim swApp As SldWorks.SldWorks
Dim swDraw As SldWorks.DrawingDoc
Dim swView As SldWorks.View
Dim swTable As SldWorks.TableAnnotation
Dim nNumRow As Long
Dim i As Long
Sub main()
Set swApp = Application.SldWorks
Set swDraw = swApp.ActiveDoc
Set swView = swDraw.GetFirstView
Do While Not swView Is Nothing
Set swTable = swView.GetFirstTableAnnotation
Do While Not swTable Is Nothing
nNumRow = swTable.RowCount '获取切割清单行数
For i = 0 To nNumRow - 2
swTable.Text(i, 6) = "={2}D" & i + 1 & "*F" & i + 1 '写入总重方程式到切割清单
Next i
Set swTable = swTable.GetNext
Loop
Set swView = swView.GetNextView
Loop
End Sub
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

1

主题

241

帖子

37

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1001

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

19#
发表于 2016-12-7 22:19:48 | 只看该作者
很不错,顶一下!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

1

主题

127

帖子

17

金币

堂主

Rank: 4

积分
666

最佳新人活跃会员热心会员宣传达人灌水之王

20#
发表于 2016-12-14 10:36:25 | 只看该作者
确实好用,感谢分享,就是要不断的手动更新
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭 卷起
关闭 卷起

手机版|小黑屋| GMT+8, 2024-4-26 05:53 , Processed in 0.217123 second(s), 36 queries .

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

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

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