如题,代码如下,一个很简单的存档程序。
就是将当前文件零存成特定的格式,比较烦恼的就是程序以外的弹窗,比如工程图比例、目录内包含相同文件替换的弹窗等。
烦请论坛大神指教下,有没有方法让它不弹出,默认确定或是就行,感谢!
我也不熟悉这些代码,都是照着网上大神的看,边做边试,代码很乱见笑了。
- Dim swApp As Object
- Dim longstatus As Long, longwarnings As Long
- Sub main()
- Set swApp = Application.SldWorks
- Set swModel = swApp.ActiveDoc
- Set Part = swModel
- Set Part = swApp.ActiveDoc
- '判断是否打开零件体
- If swModel Is Nothing Then
- MsgBox "没有打开文档!", 0 + 16 + 65536, "错误"
- Exit Sub
- End If
- '判定当前活动文件是否是零件并赋相应扩展名变量值
- If (Part.GetType = swDocPART) Then
- g = "igs" '零件模式设定输出扩展名为igs,不包含"."
- ElseIf Part.GetType = swDocDRAWING Then
- g = "dxf" '图纸模式设定输出扩展名为dxf,不包含"."
- ElseIf Part.GetType = swDocASSEMBLY Then
- Msgr = MsgBox("当前为装配体,是否确定要将装配体输出文件?", 4 + 64 + 65536, "注意")
- If Msgr = 6 Then
- g = "igs" '设定输出扩展名为igs,不包含"."
- Else
- Exit Sub
- End If
- End If
- boolstatus = Part.EditRebuild3() '刷新模型
- Set swApp = Application.SldWorks
- Set Part = swApp.ActiveDoc
- Set SelMgr = Part.SelectionManager
- swApp.ActiveDoc.ActiveView.FrameState = 1
- '设定变量
- a = swApp.ActiveDoc.GetTitle() '零件名Part.GetPathName
- b = Part.GetPathName() '当前活动模型的完整路径和完整文件名
- c = Right(a, 7) '文件名消除扩展名
- d = Left(b, InStrRev(b, "")) '完整路径消除文件名
- e = Left(a, InStrRev(a, ".")) '消除文件名中的扩展名
- f = Chr(46) & "sldprt" '设定扩展名,不包含"."
- h = Left(b, InStrRev(b, ".")) '完整路径移除扩展名
- If (b = "") Then
- MsgBox "当前文件还未保存," & vbCrLf & "保存文件后继续执行!", 0 + 16 + 65536, "错误"
- Exit Sub
- End If
- PName = h & g
- longstatus = Part.SaveAs3(PName, 0, 0)
- MsgBox "输出文件:" & PName, 0 + 64 + 65536, "成功"
- End Sub
複製代碼
|