【问题标题】:RmDir - Path/File Access Error VBARmDir - 路径/文件访问错误 VBA
【发布时间】:2018-07-12 11:20:02
【问题描述】:

我正在尝试使用 VBA 中的 RmDr 函数删除文件夹。在执行下面的 sn-p 时,我收到以下错误:

“路径/文件访问错误”。

    'Delete HTML Folder
    If (DirExists(fileDir)) Then
        Kill fileDir & Chr(92) & "*.*"
        RmDir fileDir
    End If

文档如下:

备注 如果您尝试对包含文件的目录或文件夹使用 RmDir,则会发生错误。在尝试删除目录或文件夹之前,使用 Kill 语句删除所有文件。- https://msdn.microsoft.com/en-us/vba/language-reference-vba/articles/rmdir-statement

我的代码已经成功删除文件夹的所有内容,但是我仍然收到此错误。

有人遇到过这个错误吗?

【问题讨论】:

  • 我认为这不是 VBA 问题。无法删除文件夹(或文件)的原因有很多 - 进程可能将其锁定,用户没有足够的权限,文件夹包含隐藏文件......。发生这种情况时:可以手动删除文件夹吗?
  • 我可以手动删除文件夹没有问题。该项目也位于不需要管理员权限的区域。在删除文件夹之前,我确保它的任何内容都已关闭(在任务管理器中检查)。
  • 如果从命令行执行,rmdir "foldername" 是否会删除文件夹(确保给出完整的文件夹路径或从适当的工作目录执行)?
  • 貌似没有提到,但是当你通过代码删除一个目录时,如果该文件夹正在被任何用户访问(打开/查看),它不能正常完成,并且会抛出一个像上面这样的错误。

标签: ms-access vba


【解决方案1】:

正如大家所说,代码似乎没有问题。 我仔细研究了一下,似乎是我在 Office 中的宏设置有问题。

在 Access 中,我转到 文件>>选项>>信任中心>>信任中心设置并将宏设置为启用。

现在目标文件夹删除成功。

感谢您的帮助。

【讨论】:

    猜你喜欢
    • 2016-03-17
    • 1970-01-01
    • 2016-02-25
    • 1970-01-01
    • 2016-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多