因为工作原因,电脑里装了17版与20版sw;最近研究通过Excel vba对sw进行批量属性更改,一直用Set swApp = CreateObject("SldWorks.Application")打开20版sw,进行代码编写,运行正常。今天想着连接一下17版sw,对17版sw零部件进行批量属性更改,不知怎么一直连接到20版,查资料一上午没搞定。下午突然看到这篇文章<Solidworks二次开发-连接solidworks>,才恍然大悟。分享给大家,希望大家少走点弯路。
1、以17版为例:
Sub 连接sw()
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Set swApp = CreateObject("SldWorks.Application.25") '启动SW17
swApp.Visible = True
Set swModel = swApp.ActiveDoc
End Sub
2、其他版本对应值
(1) "sw15" 对应 "SldWorks.Application.23"
(2) "sw16" 对应 "SldWorks.Application.24"
(3) "sw17" 对应 "SldWorks.Application.25"
(4) "sw18" 对应 "SldWorks.Application.26"
(5) "sw19" 对应