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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

  [复制链接]

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, 下载次数: 296)
这是运行的效果:

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

使用道具 举报

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

本版积分规则

关闭 卷起
关闭 卷起

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

手机版|小黑屋| GMT+8, 2024-6-12 12:45 , Processed in 0.329603 second(s), 35 queries .

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

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

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