许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  技术文档 >  solidworks批量打印宏

solidworks批量打印宏

阅读数 1
点赞 0
article_banner
在 SolidWorks 中实现批量打印,主要有两种方式:‌使用自带的 SOLIDWORKS Task Scheduler‌ 和 ‌使用 VBA 宏‌。根据当前(2026年5月)最新公开资料,推荐如下:

‌一、使用 SOLIDWORKS Task Scheduler(推荐)‌

适用于 ‌SOLIDWORKS Professional、Premium 或 Office 版本‌,无需编程,操作简便。

‌步骤‌:

打开开始菜单 → 找到 ‌SOLIDWORKS 工具‌ → 启动 ‌SOLIDWORKS Task Scheduler‌。

点击 ‌“打印文件”‌。

点击 ‌“添加文件”‌ 或 ‌“添加文件夹”‌ 选择要打印的 .slddrw 文件。

可设置打印时间(立即或定时)、输出格式(如 PDF)。

点击 ‌“完成”‌ 开始任务。

⚠️ 注意事项:

打印方向(横向/纵向)需提前分类,否则可能出现裁边问题 ‌‌

默认缓存文件在 C 盘,建议在“高级”选项中更改输出路径 ‌‌

‌二、使用 VBA 宏实现批量打印‌

适合需要更高自定义(如自动识别图纸方向、按条件打印)的用户。

‌核心功能‌:

遍历指定文件夹中的所有 .slddrw 文件。

打开每个图纸,调用打印 API,按设置输出(直接打印或保存为 PDF)。

支持弹窗选择文件夹和宏文件 ‌‌

‌关键代码片段(简化版)‌:

solidworks批量打印宏

vba

Sub BatchPrintDrawings()

Dim swApp As SldWorks.SldWorks

Dim swModel As SldWorks.ModelDoc

Dim folderPath As String, fileName As String

Dim fileList() As String, i As Long



Set swApp = GetObject(, "SldWorks.Application")

folderPath = "C:\YourDrawingsFolder\" ' 修改为实际路径

fileName = Dir(folderPath & "*.slddrw")



Do While fileName <> ""

ReDim Preserve fileList(i)

fileList(i) = folderPath & fileName

i = i +

fileName = Dir()

Loop



For Each file In fileList

Set swModel = swApp.OpenDoc6(file, swDocDRAWING, swOpenDocOptions_Silent, "", 0, 0)

swModel.PrintDirect ' 或使用 PrintOut 自定义设置

swApp.CloseDoc swModel.GetTitle

solidworks批量打印宏

Next file

End Sub

‌启用宏前提‌:

在 SolidWorks 中启用 ‌“宏”工具栏‌(右键工具栏 → 勾选“宏”)‌‌

宏文件保存为 .swp 格式,需引用 ‌SolidWorks Type Library‌ ‌‌

‌三、第三方插件(可选)‌

若不想写代码,可考虑第三方工具,如:

‌ICTBox‌:支持自动识别图纸尺寸/方向,一键批量打印 ‌‌

‌凯元工具‌:提供批量打印、重命名、PDF 导出等功能 ‌‌

‌总结建议‌

‌普通用户‌ → 优先使用 ‌SOLIDWORKS Task Scheduler‌ ‌‌

‌高级用户或需自动化流程‌ → 使用 ‌VBA 宏‌ ‌‌

‌追求效率且不介意成本‌ → 尝试 ‌第三方插件‌ ‌‌

如需宏示例项目源码,可参考:CSDN 博客 - SolidWorks批量为零件运行宏程序 ‌‌

相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空