在老铁们的大力支持之下,第5版终于面世了。本宏程序基于solidworks2021版设计,未在其余版本的solidworks下测试。本程序文件共享在网盘中,关注微信公众号“全栈开发的码农”并回复消息“一键重命名”即可获得下载链接和提取码。下载程序文件后,在solidworks打开任意文档,添加并运行宏。程序界面如下图。
在装配体中,可选择一个或多个文件进行改名、使之独立或创建新版。在零件图或工程图中,无需选择文件。对于子装配体或其下的零件,目前不支持改名,你可以选择打开子装配体后对子装配内的零件改名,打开子装配体时无需关闭宏程序。点击确定改名时,新文件将会覆盖原文件,因此会再次确认是否需要改名,改名后再次确认是否立即保存,如果选择立即保存,则宏程序会对改名后的文件进行图号分离处理,图号分离的规则如下:图号和名称必须用空格分开,如果文件名有1个以上空格,则以第1个空格分开图号和名称,如果文件名没有空格且没有中文,则认为文件名是图号,如果文件名没有空格且只含有中文,则认为文件名是名称。图号分离的主要代码如下。
'图号分离,组合件 Function splitName() As Boolean Dim arr3 As Variant Dim fileerror As Long Dim filewarning As Long Dim swModel As SldWorks.ModelDoc2 Dim Config As SldWorks.ConfigurationManager Dim name As String arr3 = arr2Dic.Keys For i = 0 To UBound(arr3) 'Debug.Print arr2Dic(arr3(i)) If isFileExist(arr3(i)) Then Set swModel = swApp.OpenDoc6(arr3(i), swDocPART, swOpenDocOptions_Silent, "", fileerror, filewarning) '打开指定文件,这里是SLDPRT格式三维模型 'Set config = swModel.GetActiveConfiguration.name Set swCustPropMgr = swModel.Extension.CustomPropertyManager(arr2Dic(arr3(i))) name = getFileName(arr3(i), 0) '物料代号和物料名称 If UBound(Split(name, " ")) = 0 Then If strWithChinese(Split(name, " ")(0)) Then '如果前段含有中文 drawingNo = "" drawingName = Split(name, " ")(0) Else drawingNo = Split(name, " ")(0) drawingName = "" End If Else drawingNo = Split(name, " ")(0) drawingName = Split(name, " ")(1) End If swCustPropMgr.Add3 "物料代码", swCustomInfoText, drawingNo, swCustomPropertyReplaceValue swCustPropMgr.Add3 "物料名称", swCustomInfoText, drawingName, swCustomPropertyReplaceValue End If Next End Function
图号分离的主要思路是将全局字典变量arr2Dict的key转成一个数组arr3,该字典的key是文件的全名称(含绝对路径),value是它的配置名称,遍历数组arr3即可对所有选定的文件进行图号分离。
“使之独立”一般用于将阵列零件中一个或多个与同一阵中的其它零件区分开来,可以单独修改而不影响同一阵列中的其它零件。“创建新版”是将原文件复制一份并用新的文件名命名,并在装配图里用新创建的版本替代原文件,而原文件(旧版本)仍保留在原来保存的位置。“编码规则”是用于给新文件名取名时遵守的规则,这些规则包括“固定文本”、“流水编号”以及“流水编号位数”,设定好后,点击确定即可保存,下次启动程序时自动按照此规则进行自动编号。
如果某些文件不适合用自动编号,那么你可以在选中的列表中双击它,此时会弹出修改文件名的对话框,在这个对话框里,你可以随意设置新文件名的名称,也可以通过引用原文件名并在原文件名的基础上修改,但不允许修改成和原文件名一模一样。经过自定义修改新文件名后的文件名称就不会再受是否勾选“用原文件名作后缀”的影响。勾选框“用原文件名作后缀”的作用是将原文件的“名称部分”添加到新文件名的后面,“名称部分”是指以原文件名第1个空格分隔的后半部分,如果原文件名没有空格也没有中文字符,则认为原文件名没有“名称部分”,如果原文件名没有空格但含有中文字符,则把整个原文件名作为新文件名的后缀。
“选择带图零件”按钮会将装配体中所有带有工程图的零件都选中,并在列表框中显示。
“打开路径”是指打开列表框中第1个选中的文件所在的文件夹,并在文件夹中选中该文件。
“保存设置”是指将几个勾选框的设置保存下来,下次程序启动时就按照保存的样式预先勾选好,无需每次都进行勾选设置。
测试版本的程序可能会把含有工程图的零件显示为“无”工程图,且某些按钮可能不产生预期作用,如果你需要正式版,请关注微信公众号“全栈开发的码农”并发送私信,或者直接添加作者微信以获取正式版。
标签:重命名,Dim,name,文件名,SolidWorks,一键,图号,空格,arr3 From: https://www.cnblogs.com/wwwzgy/p/18487263