如何取消查找/替换提示的对话框?

时间:2019-07-15 14:17:02

标签: excel vba excel-2010

我正在尝试将一些工作表迁移到新的工作簿中。这些工作表引用了迁移前工作簿中的其他工作表。我的计划是将“ [''filename.xlms'.....”替换为“ #REF!”。以便用户可以在配置选项卡中输入新的工作簿文件名,然后单击按钮以查找/替换所有#REF!带有要引用的新文件名。我的功能正常运行,但是我很难用#REF!查找/替换所有当前/迁移前的工作簿引用。我正在使用此代码,它似乎工作正常。

Sub Find_Replace_Migrate()

Application.ScreenUpdating = False

Dim sourceBook As Workbook
Dim sourceSheet As Worksheet

Set sourceBook = ActiveWorkbook
sourceBook.Activate

Sheets("new_worksheet_in_new_workbook").Select
Sheets("new_worksheet_in_new_workbook").Cells.Select
Selection.Replace What:="old_workbook.xlsm", Replacement:="#REF!", LookAt:= _
    xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
    ReplaceFormat:=False

Application.ScreenUpdating = True

End Sub

但是...每次脚本用#REF!替换众所周知的工作簿引用时,它都会要求我在文件系统中查找和搜索该工作簿(出现提示“打开”工作簿,或者只需取消操作)。现在,如果我有5-10个查找/替换,那就好了,但是每个工作表可以找到/替换大约90,000个单元格,并且我可以迁移约12-15个工作表...

是否可以禁止这些提示或自动取消此操作?谢谢!

1 个答案:

答案 0 :(得分:0)

经过不断研究,我找到了我需要的东西。

Application.DisplayAlerts = False       
Application.EnableEvents = False