1. Dim swApp As Object: 声明一个名为swApp的Object类型变量。
  2. Option Explicit: 强制要求在代码中声明所有使用的变量,避免因拼写错误或未声明的变量引起的错误。
  3. Sub main(): 定义一个名为main的子程序。
  4. Dim swApp As SldWorks.SldWorks: 声明一个名为swApp的SldWorks.SldWorks类型变量。
  5. Set swApp = Application.SldWorks: 将SOLIDWORKS应用程序的SldWorks对象赋值给swApp变量。
  6. Dim swModel As SldWorks.ModelDoc2: 声明一个名为swModel的SldWorks.ModelDoc2类型变量。
  7. Set swModel = swApp.ActiveDoc: 将当前打开的文档赋值给swModel变量。
  8. Dim selMgr As SldWorks.SelectionMgr: 声明一个名为selMgr的SldWorks.SelectionMgr类型变量。
  9. Set selMgr = swModel.SelectionManager: 将swModel的SelectionManager属性赋值给selMgr变量。
  10. Dim docName As String: 声明一个名为docName的String类型变量。
  11. docName = Left(swModel.GetTitle, InStrRev(swModel.GetTitle, ".") - 1): 获取当前打开的文档的标题(不包括扩展名),并赋值给docName变量。
  12. Dim pdfFilePath As String: 声明一个名为pdfFilePath的String类型变量。
  13. pdfFilePath = "C:\Users\图\Desktop\图纸清单" & docName & ".pdf": 将pdf文件的保存路径赋值给pdfFilePath变量。
  14. swModel.SaveAs3 pdfFilePath, swSaveAsCurrentVersion, swSaveAsOptions_Silent, Nothing, 0, 0: 将当前打开的文档另存为同名的pdf格式文件,保存到指定文件夹。
  15. Dim dwgFilePath As String: 声明一个名为dwgFilePath的String类型变量。
  16. dwgFilePath = "C:\Users\图\Desktop\图纸清单" & docName & ".dwg": 将dwg文件的保存路径赋值给dwgFilePath变量。
  17. swModel.SaveAs3 dwgFilePath, swSaveAsCurrentVersion, swSaveAsOptions_Silent, Nothing, 0, 0: 将当前打开的文档另存为同名的dwg格式文件,保存到指定文件夹。
  18. Dim refModel As SldWorks.ModelDoc2: 声明一个名为refModel的SldWorks.ModelDoc2类型变量。
  19. Dim refObj As Object: 声明一个名为refObj的Object类型变量。
  20. For Each refObj In selMgr.GetReferencedDocuments: 遍历当前打开的文档中所引用的所有文档。
  21. Set refModel = refObj: 将引用的文档赋值给refModel变量。
  22. If refModel.GetType = swDocPART Then: 判断引用的文档是否为part零件文档。
  23. If Not refModel.IsOpened Then: 判断part零件文档是否已经打开。
  24. swApp.OpenDoc6 refModel.GetPathName, swDocPART, swOpenDocOptions_Silent, "", 0, 0: 如果part零件文档未打开,则打开它。
  25. Dim stepFilePath As String: 声明一个名为stepFilePath的String类型变量。
  26. stepFilePath = "C:\Users\图\Desktop\图纸清单" & docName & ".step": 将step文件的保存路径赋值给stepFilePath变量。
  27. refModel.SaveAs3 stepFilePath, swSaveAsCurrentVersion, swSaveAsOptions_Silent, Nothing, 0, 0: 将当前打开的part零件文档另存为同名的step格式文件,保存到指定文件夹。
  28. Next refObj: 继续遍历下一个引用的文档。
  29. End Sub: 结束子程序

原文地址: https://www.cveoy.top/t/topic/eGtz 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录