Excel 打开文件时出错

Excel 打开文件时出错,excel,vba,Excel,Vba,我正在尝试打开特定文件夹中的一组文件。但是当我试图打开其中一个文件时,我得到了附加的登录弹出窗口。 我不知道如何摆脱它,因为我们不希望有人手动撤销它,而且,我正在取消弹出窗口下面的弹出窗口 我只需单击“否/是”,我就会得到一个运行时错误 但指定的文件已打开(每日测试库存文件) 以下是我迄今为止所取得的成就: Dim MyFolder As String Dim MyFile As String Application.ScreenUpdating = False Application.E

我正在尝试打开特定文件夹中的一组文件。但是当我试图打开其中一个文件时,我得到了附加的登录弹出窗口。

我不知道如何摆脱它,因为我们不希望有人手动撤销它,而且,我正在取消弹出窗口下面的弹出窗口

我只需单击“否/是”,我就会得到一个运行时错误

但指定的文件已打开(每日测试库存文件)

以下是我迄今为止所取得的成就:

Dim MyFolder As String
Dim MyFile As String

Application.ScreenUpdating = False
Application.EnableEvents = False


MyFolder = "C:\"
MyFile = Dir(MyFolder & "\*.xlsx")
Do While MyFile <> ""
    Workbooks.Open Filename:=MyFolder & "\" & MyFile
DoEvents
Loop
Dim MyFolder作为字符串
将MyFile设置为字符串
Application.ScreenUpdating=False
Application.EnableEvents=False
MyFolder=“C:\”
MyFile=Dir(MyFolder&“\*.xlsx”)
当我的文件“”时执行此操作
工作簿。打开文件名:=MyFolder&“\”&MyFile
多芬特
环

就Excel VBA而言,我是个新手。(因为我没有足够的声誉,所以无法发布所有图像)

您没有阅读下一个文件名。因此,循环是无限的。 请在“DoEvents”上方添加以下行:


同时关闭警报

还有更好的synatx

  • 使用工作簿对象保存打开的工作簿
  • 做你的代码
  • 关闭每个工作簿(下面的代码不保存)
  • 然后触发下一个循环
代码

Sub recut()
将MyFolder设置为字符串
将MyFile设置为字符串
将Wb设置为工作簿
应用
.ScreenUpdate=False
.EnableEvents=False
.DisplayAlerts=False
以
MyFolder=“C:\”
MyFile=Dir(MyFolder&“\*.xlsx”)
当我的文件“”时执行此操作
设置Wb=Workbooks.Open(MyFolder&“\”&MyFile)
“执行代码吗
Wb.关闭错误
MyFile=Dir
环
应用
.ScreenUpdate=True
.EnableEvents=True
.DisplayAlerts=True
以
端接头

谢谢你的帮助,但我还是得到了登录的弹出窗口(第一张图片)。我怎样才能通过呢?对于登录提示,请阅读以下内容:感谢您提供的代码,但我不希望关闭打开的工作簿,因为需要采取进一步的操作。“窗口登录”不会出现,但所有工作簿也会出现。
MyFile = Dir()
Sub recut()

Dim MyFolder As String
Dim MyFile As String
Dim Wb As Workbook

With Application
.ScreenUpdating = False
.EnableEvents = False
.DisplayAlerts = False
End With

MyFolder = "C:\"
MyFile = Dir(MyFolder & "\*.xlsx")
Do While MyFile <> ""
    Set Wb = Workbooks.Open(MyFolder & "\" & MyFile)
'do code
Wb.Close False
MyFile = Dir
Loop


With Application
.ScreenUpdating = True
.EnableEvents = True
.DisplayAlerts = True
End With

End Sub