【问题标题】:excel 2010 vba, path/file access errorexcel 2010 vba,路径/文件访问错误
【发布时间】:2016-03-17 11:13:13
【问题描述】:

在下面的excel 2010 vba 中,如果提示的答案是否定的,则te 文件夹中的文件,然后该文件夹被删除。但是,当我运行vba 时,我得到了path/file access error。特别是 RmDir MyFolder 行被突出显示,但是当我单步执行代码时,正确的目录出现在变量 MyFolder 中,我可以将新文件写入目录。我错过了什么?谢谢 :)。

另外,如果我手动导航到该目录,我可以将其删除。

iYesNo = MsgBox("Do the patients and barcode match the setup sheet?", vbYesNoCancel)
      Select Case iYesNo
             Case vbYes
             GoTo Line2
             Case vbNo
             MsgBox ("Doesn't match! Please enter again")
             MyFolder = Directory ' delete all txt files in the folder
             MyFile = Dir(MyFolder & "*.*")
             Do Until MyFile = ""
             Kill MyFile
             MyFile = Dir
             Loop

               RmDir MyFolder  ' delete folder
             GoTo Line1
       End Select

【问题讨论】:

    标签: vba excel dir


    【解决方案1】:

    你很可能在末尾有一个/ 阻止你删除文件夹,请参阅更正。

    另外,您可以将Dir(...) 更改为仅选择txt 文件以避免删除其余文件!

    代码如下:

    iYesNo = MsgBox("Do the patients and barcode match the setup sheet?", vbYesNoCancel)
    Select Case iYesNo
        Case vbYes
            GoTo Line2
        Case vbNo
            MsgBox ("Doesn't match! Please enter again")
            MyFolder = Directory ' delete all txt files in the folder
            MyFile = Dir(MyFolder & "*.txt")
            Do Until MyFile = ""
                Kill MyFile
                MyFile = Dir
            Loop
    
            RmDir Left(MyFolder, Len(MyFolder) - 1) ' delete folder
            GoTo Line1
    End Select
    

    【讨论】:

    • 因此更改确实有效,但是现在我在Kill MyFile 行上找不到一个文件,但目录中有 3 个 txt 文件要删除。谢谢你:)。
    • 奇怪...我没有更改有关Kill 的部分,它只是应该过滤文本文件...祝你好运! ;)
    【解决方案2】:

    Excel VBA 对文件的访问权限取决于 Excel 是在具有或不具有管理员权限的情况下启动的。找到 EXCEL.EXE 并在有或没有右键单击和以管理员身份运行的情况下启动它。检查你的 VBA 做了什么。使用管理员权限创建一个文本文件。然后尝试在没有非管理员权限的情况下打开该文件。尽管您在哪个文件夹中进行此测试可能很重要。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-25
      • 2017-04-29
      • 2011-06-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多