ScreenUpdating在打开文件时不起作用

所以我为我的Excel 2011 for Mac创build了一个常用macros的库。 我正在运行一些testing,以确保它正常工作。 我遇到的最大的问题是,当我运行代码(尽pipe将ScreenUpdating设置为False),它在运行macros时显然会打开库文件。

为了确保这是有效的,我想阻止这种情况的发生。 这是目前我的代码看起来像:

Sub findRow() Application.ScreenUpdating = False Application.DisplayAlerts = False Application.EnableEvents = False Dim bk As Workbook Dim result As Long Dim aWB As Workbook Dim aWS As Worksheet Set aWB = ActiveWorkbook Set aWS = ActiveWorkbook.ActiveSheet With Application .ScreenUpdating = False .DisplayAlerts = False .EnableEvents = False Set bk = .Workbooks.Open _ (ActiveWorkbook.Path & ":library.xlsm") 'Set bk = ActiveWorkbook.Path & ":library.xlsm" End With 'Workbooks.Open (ActiveWorkbook.Path & ":library.xlsm") 'Workbooks.Open (bk) result = Application.Run("'" & ActiveWorkbook.Name & "'!findFirstEmptyRow", aWS) ActiveWorkbook.Close Cells(result, 1) = result Application.ScreenUpdating = True Application.DisplayAlerts = True Application.EnableEvents = True End Sub 

那里有很多的冗余,以及评论显示我尝试过的各种事情的线条。 本来我只是运行代码,将Application.X设置为False,打开工作簿,运行macros,并closures。

希望有人可以想出一个原因,当我打开一个新的工作簿ScreenUpdating不起作用。

将ScreenUpdating设置为false只会阻止显示电子表格更新。 它不会自行隐藏工作簿的打开。 尽pipe可以隐藏工作簿的打开,或者在不创buildExcel的实例的情况下访问工作簿数据,但对于您正在描述的创buildVBA库的任务,要实现这一目的的方法是创build一个Excel加载项。 一个加载项不仅可以让你使用任何Excel实例的macros,还可以编辑你的代码,也可以从任何实例向公共仓库添加新的macros。