首页 > 解决方案 > 打开工作簿时跳过有关某些丢失对象的警告弹出窗口

问题描述

我的代码循环遍历 Excel 文件以打开、读取数据和关闭。

有些文件在打开时会弹出警告。

此警告是关于一些丢失的对象。我想跳过它并正常运行。

我试过.DisplayAlertsFalse.ScreenUpdating

无法加载警告弹出窗口

标签: excelvba

解决方案


这个答案的后半部分有一个使用 ADODB 的例子,就像@SiddharthRout 提到的使用 OLEDB 一样。

我认为您也可以创建另一个实例,Excel Application然后将其隐藏。我不相信您会在隐藏窗口上收到提示(我可能是错的)。这肯定会比上面的建议慢,但你不必对现有代码进行太多更改,如果有的话。

Dim XlApp As Excel.Application
Dim Book As Workbook

Set XlApp = New Excel.Application
With XlApp
    .Visible = False ' Hide it, so that the end user can't see and prompts don't fire
    ' Open Workbooks and read sheets here...
    Set Book = .Workbooks.Open(Filename)
    With Book
        ' Read Sheet Data...
        .Close
    End With
    Set Book = Nothing
    .Quit
End With
Set XlApp = Nothing

推荐阅读