【问题标题】:Run time error 52 Bad file name or number运行时错误 52 错误的文件名或编号
【发布时间】:2014-09-23 17:00:24
【问题描述】:

我正在尝试运行 vba 代码以对 excel 文件的文件夹执行多项操作。这段代码是由不再与我公司合作的其他人编写的,但 VBA 脚本在上次运行时有效。现在,当我尝试运行它时,我不断收到运行时错误 52(“错误的文件名或编号”)。有什么建议吗?

代码更长,但错误(根据调试器)突出显示如下:

Print #intFreeFile, _ " *XXXXXXXXX * * * Error in code 'main_ProcessBringFwd' " & Err & ": " & _ Error(Err)

【问题讨论】:

  • 代码更长,但错误(根据调试器)突出显示如下: Print #intFreeFile, " *XXXXXXXXX * * * Error in code 'main_ProcessBringFwd' " & Err & ": " &错误(Err)
  • 我认为我们需要多看一点您的代码...此时出现错误时intFreeFile 的值是多少?该文件是否已被另一个应用程序打开?等等。
  • 该宏应该适用于大约 300 个 excel 文件,目前这些文件都没有打开或正在使用。不确定 intFreeFile 的值 - 这是指正在处理的文件的 # 吗?当我尝试运行宏时,似乎没有访问任何文件。

标签: vba excel runtime


【解决方案1】:

大家好,我在尝试运行具有 Marco 以添加 Zip 文件的 Excel 工具时遇到了同样的错误。在 OneDrive 同步文件夹上。 - 不知道这是否是你们遇到的情况,但 OneDrive 中有一个功能,您必须禁用或运行 OneDrive 未使用的同步文件夹之外的文件...... - 在 OneDrive 设置下,转到“Office”选项卡并取消选中“使用 Office 应用程序同步我打开的 Office 文件”enter image description here

【讨论】:

    【解决方案2】:

    如果目标目录不存在,或者您没有写入权限,就会发生这种情况

    【讨论】:

      【解决方案3】:

      如果文件是网络文件,那么如果出现临时网络故障,程序可能无法找到该文件,我已经多次遇到这个问题。

      此类错误的修复方法是在打开文件之前检查驱动器/文件夹是否存在。

      【讨论】:

        【解决方案4】:

        我发现当我收到此错误消息时,是因为我试图在文件名中使用:。我一删除它,宏就完美运行了。我认为在涉及特殊字符时可能与代码冲突。

        【讨论】:

          【解决方案5】:

          问题可能出在错误信息中。 打开代码并查找尝试读取或保存文件的命令。他们可能使用了无效的路径。

          您的代码中的某处可能有这样的内容:

          Open file_name For Output As #intFreeFile
          

          调试您的代码并检查“file_name”中的值(它可能是其他 var 名称)是否是有效路径和有效文件名。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2022-06-15
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2014-04-01
            • 2011-12-05
            • 2020-10-17
            • 1970-01-01
            相关资源
            最近更新 更多