You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MacOS 12.6下VBA批量转.doc至.docx遇运行时错误-2146959355求助

macOS下Word VBA批量转doc为docx时Automation错误的解决办法

针对你遇到的Runtime error -2146959355 (80080005)自动化错误,结合macOS 12.6的环境特性,以下是具体的排查和解决步骤:

1. 检查Word的文件夹访问权限

macOS的隐私权限管控严格,这是最常见的诱因:

  • 打开系统偏好设置 > 安全性与隐私 > 隐私 > 文件与文件夹
  • 在应用列表中找到Microsoft Word,勾选目标文件所在的文件夹(比如你的/Users/me/path/to/files/目录)
  • 关闭并重新打开Word,再运行宏

2. 排查Word进程与可见性问题

  • 先结束所有Word进程:打开活动监视器,搜索“Microsoft Word”,终止所有相关进程,再重新打开Word运行宏
  • 修改代码中Visible:=False为Visible:=True,让Word窗口显示出来——部分旧doc文件可能存在损坏、加密或需要格式修复的弹窗,后台运行时会触发自动化错误,可见模式下能直接看到问题

3. 调整路径格式与SaveAs参数

  • 尝试将路径替换为macOS原生的冒号分隔格式,比如把strFolder = "/Users/me/path/to/files/"改成strFolder = "Macintosh HD:Users:me:path:to:files:"
  • 把FileFormat:=16替换为命名常量FileFormat:=wdFormatXMLDocument,避免数值在不同版本下的兼容性问题(确保宏所在文档已默认引用Word对象库)

4. 添加错误捕获,避免批量任务中断

修改代码增加错误处理,遇到损坏文件时跳过并记录错误,不影响后续文件处理:

Sub TranslateDocIntoDocx()
  Dim objWordApplication As New Word.Application
  Dim objWordDocument As Word.Document
  Dim strFile As String
  Dim strFolder As String

  strFolder = "/Users/me/path/to/files/"
  objWordApplication.Visible = True ' 开启可见模式排查问题
  strFile = Dir(strFolder & "*.doc", vbNormal)
  
  While strFile <> ""
    On Error Resume Next ' 捕获错误,避免单文件失败终止任务
    With objWordApplication
      Set objWordDocument = .Documents.Open(FileName:=strFolder & strFile, AddToRecentFiles:=False, ReadOnly:=True, Visible:=False)
      
      If Err.Number = 0 Then
        With objWordDocument
          ' 使用命名常量指定docx格式
          .SaveAs FileName:=strFolder & Replace(strFile, ".doc", ".docx"), FileFormat:=wdFormatXMLDocument
          .Close
        End With
      Else
        ' 在立即窗口打印错误信息,方便排查问题文件
        Debug.Print "处理失败: " & strFile & ",错误码: " & Err.Number
        Err.Clear
      End If
    End With
    strFile = Dir()
  Wend

  objWordApplication.Quit ' 退出Word实例
  Set objWordDocument = Nothing
  Set objWordApplication = Nothing
End Sub

5. 终极排查:重启系统与重置Word偏好

如果以上方法都无效:

  • 重启Mac,清除系统临时进程缓存
  • 重置Word偏好:关闭Word后,删除~/Library/Preferences/com.microsoft.Word.plist文件,再重新打开Word

内容的提问来源于stack exchange,提问作者artbertert

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 09:15:08