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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

好品数字
好品数字
楼主: tg000057
打印 上一主题 下一主题

【原创】多实体零件组合成装配体-宏

  [复制链接]

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

跳转到指定楼层
楼主
 楼主| 发表于 2021-9-1 17:29:36 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式
如题:
'说明:
'1.零件状态运行,
'2.多实体零件自动拆分成一个个单实体零件,并组合成一个装配体,原点装配,
'3.装配中装配原始零件,自动成压缩状态。



补充内容 (2021-10-6 14:35):
2021-10-06更新版在39楼

补充内容 (2021-11-22 14:28):
45楼更新,避免新建零件,装配体的重名操作,(当文件夹内已有相同名称时,名称自动序号+1)

多实体零件组成装配体.rar

(15.27 KB, 下载次数: 254 售价: 15 金币

评分

参与人数 1威望 +5 金币 +52 贡献 +5 收起 理由
洪七公 + 5 + 52 + 5 山寨

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏11 转播转播 分享教程|习题|模型|技巧 点赞点赞 拍砖拍砖
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

沙发
 楼主| 发表于 2021-9-1 20:32:27 | 显示全部楼层
peng188 发表于 2021-9-1 20:12
建议原来多实体零件自动压缩状态改为封套,并隐藏。

个人习惯这样子用,代码是开源的,下载后可自行修改。
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复 支持 反对

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

板凳
 楼主| 发表于 2021-9-1 20:34:41 | 显示全部楼层
peng188 发表于 2021-9-1 19:56
相同实体怎么处理?

怎么个相同?此宏是遍历实体个个保存,然后插入装配体,还有识别是否相同的功能。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

地板
 楼主| 发表于 2021-9-1 20:35:52 | 显示全部楼层
tg000057 发表于 2021-9-1 20:34
怎么个相同?此宏是遍历实体个个保存,然后插入装配体,还有识别是否相同的功能。

额,是没有识别功能,打上面打错字了。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

5#
 楼主| 发表于 2021-9-3 14:20:35 | 显示全部楼层

   经典案例图书
Allate 发表于 2021-9-3 14:07
山寨,哈哈哈哈

放羊的孩子啊!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

6#
 楼主| 发表于 2021-9-15 14:34:20 | 显示全部楼层
是有bug忘记更新了,
1.如果多实体没有保存就就运行,运行后会强行关闭,倒致一些特征没有。
加一段保存的代码在判断文档类型后面。
    If swModel.GetType <> 1 Then MsgBox "请在零件状态下运行!": End
    swModel.Save2 False





2.当多实体零件只有实体没有曲面,或者只有曲面没有实体时,会下标报错,
在新建零件插入实体的循环前加一段判断代码代码。


If i = 0 Then Exit Sub
For i = 0 To UBound(sAname)



If j = 0 Then Exit Sub
For j = 0 To UBound(sBname)

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

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

7#
 楼主| 发表于 2021-10-6 14:29:12 | 显示全部楼层

   经典案例图书
更新:1,当零件只有曲面或实体其中一种时,下标报错。
2,新建零件或装配体时,重命报错(非第一次运行)。

增加:
1,点选其中一个或多个实体,仅输出选中实体 ,再新建零件来组合装配体。
2,增加最后保存装配体。

多实体零件组成装配体2.zip

(23.21 KB, 下载次数: 151 售价: 15 金币

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

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

8#
 楼主| 发表于 2021-10-6 14:32:56 | 显示全部楼层

这个应该是重名报错了,更新的在39楼,你也可以根据下面的代码修改,保存零件部件也要同样修改,只是要注意变量序号1的位置。
mm= 1
G_mm:
FileA = Left(File, Len(File) - 7) & "-装配" & mm & ".SLDASM"                      '装配体路径
If Dir(FileA) <> "" Then mm = mm + 1: GoTo G_mm                 '当文件名存在时,序号+1
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

9#
 楼主| 发表于 2021-10-6 16:40:57 | 显示全部楼层
刘茂机械 发表于 2021-10-6 14:51
重新下载后还是不行 插入了原零件 后就没有反应了  2016版本

具体哪一段报错,报错内容是什么,还是完全没有反映?

嗯,还有另一种可能就是有些api不支持,我这边用的2019的,如果是这个原因的话就要看看有没有对应的接口可以替用了。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

10#
 楼主| 发表于 2021-10-16 09:26:17 | 显示全部楼层
增加输入名称选项
执行时会提示输入装配体名称,建立的装配体,装配体名称自动在后面加“00”,相关实体建立的名称则为输入的装配名称后面加“01”、“02”。。。。如果第二次执行时输入 相同的名称 则,装配体名称后则加“01”,相关实体建立的零件则为输入的装配名称后面加,已在存在的序号加1

多实体零件组成装配体3.zip

(24.11 KB, 下载次数: 313 售价: 15 金币

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

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

11#
 楼主| 发表于 2021-10-29 10:29:51 | 显示全部楼层
igxoqve 发表于 2021-10-29 09:16
楼主,把这个宏改成能识别相同实体就完美了

这个做不到的,零件中的所有实体都是唯一性的存在,没有办法让它来帮你找相同,
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

12#
 楼主| 发表于 2021-10-30 11:58:15 | 显示全部楼层
fz8889 发表于 2021-10-30 10:45
SW2018运行会报错

报错提示??
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

13#
 楼主| 发表于 2021-10-30 14:41:18 | 显示全部楼层
fz8889 发表于 2021-10-30 14:21
现在报错提示:438  装配图模板路径和零件模板路径我也都修改正确了的

经查,InsertPart3是sw2019以上才有,sw2018没有,你可以试试换成InsertPart2。
把new_Part_A和new_Part_B段的修改成。
Set myFeature = swModel.InsertPart2(File, 259)
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

14#
 楼主| 发表于 2021-11-3 08:05:34 | 显示全部楼层
刘茂机械 发表于 2021-11-2 18:44
我用2018修改代码后可用 现在我想.插入装配中装配原始零件,自动勾选不包括在材料明细表中(如图)。

6楼已回复!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

39

主题

374

帖子

3114

金币

传奇

Rank: 8Rank: 8

积分
7861

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

15#
 楼主| 发表于 2021-11-22 14:26:07 | 显示全部楼层
加入QQ群
参与讨论和学习

SolidWorks技术交流群

或扫描二维码加入

ZJGERS 发表于 2021-11-22 14:11
我不知道后面有更新了,请问我下载了第一版的报错,怎么样升级啊,没钱下更新的拉

如果是用了39楼的,是没问题,45楼的更新不是很重要,只是避免重名的操作而已,我发一个给你。
SolidWorks机械工程师网
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

关闭 卷起
关闭 卷起

手机版|小黑屋| GMT+8, 2024-5-25 01:23 , Processed in 0.248114 second(s), 35 queries .

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

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

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