VBA运行时错误438:导出PDF自身正常Office2019环境报错如何解决
问题解决方案
报错原因
- 运行时错误438本质是对象不支持对应属性/方法,
ExportAsFixedFormat2为Office 365、2021及之后版本新增的Word VBA方法,Office 2019版本未内置该方法,因此触发报错。 - 全版本Office通用的PDF导出方法为
ExportAsFixedFormat,基础导出功能的参数规则和ExportAsFixedFormat2完全兼容。
兼容修改方案
直接将原有代码替换为以下内容即可,修改后同时适配Office 2019、2021、365全版本环境:
.ExportAsFixedFormat ThisWorkbook.Path & "\" & sFileName & ".pdf", 17
如果要提升代码可读性,也可以使用Word内置常量替代固定值:
.ExportAsFixedFormat OutputFileName:=ThisWorkbook.Path & "\" & sFileName & ".pdf", ExportFormat:=wdExportFormatPDF
注意事项
如果原代码中用到了ExportAsFixedFormat2独有的可选参数(比如PDF/A合规性、新版导出优化相关参数),移除这些参数即可,Office 2019导出时会自动调用默认配置,不影响常规PDF导出需求。
内容的提问来源于stack exchange,提问作者Gridhup
相关产品推荐
相关产品推荐

