|
板凳

楼主 |
发表于 2023-4-27 09:01:44
|
只看该作者
经典图书 这个是宏的代码:
Dim swApp As Object
Sub main()
'用字符串来临时存放代码
Dim s As String
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swEqnMgr As SldWorks.EquationMgr
Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc
Set swEqnMgr = swModel.GetEquationMgr
Set CurCFG = swModel.GetActiveConfiguration()
ConfName = CurCFG.Name
'建立两个属性(代号代码和名称代码)
blnretval = swModel.AddCustomInfo3(ConfName, "代号代码", swCustomInfoText, frmPartID)
blnretval = swModel.AddCustomInfo3(ConfName, "名称代码", swCustomInfoText, frmPartID)
'为代号代码属性赋值
s = "part.Extension.CustomPropertyManager("""").Add3(""代号"", swCustomInfoText, Left(part.GetTitle, InStrRev(part.GetTitle, "" "") - 1), 1)"
dummy = swModel.Extension.CustomPropertyManager(swModel.ConfigurationManager.ActiveConfiguration.Name).Set("代号代码", s)
'为名称代码属性赋值
s = "part.Extension.CustomPropertyManager("""").Add3(""名称"", swCustomInfoText,Mid(part.GetPathName, InStrRev(part.GetPathName, "" "") + 1, InStrRev(part.GetPathName, ""."") - InStrRev(part.GetPathName, "" "") - 1), 1)"
dummy = swModel.Extension.CustomPropertyManager(swModel.ConfigurationManager.ActiveConfiguration.Name).Set("名称代码", s)
'将代号代码和名称代码属性添加到全局变量A和B
swEqnMgr.Add2 0, ("""A"" = ""代号代码"""), False
swEqnMgr.Add2 0, ("""B"" = ""名称代码"""), False
End Sub
|
|