Gavin有一个工作表很大,他发现使用Trace Precedents工具(在功能区的“公式”选项卡上)找出正在发生的事情会有所帮助。 Gavin希望即使保存工作簿也要“打开”该工具的设置,但是Excel不允许他这样做。他想知道是否有办法保持打开状态,以便在工作簿中始终标记先例。

有人认为打开工作簿时通过宏打开先例相对容易。您需要做的就是使用如下所示的宏:

Sub ShowTracePrecendents1()

Dim rng As Range     Dim c As Range

With ActiveSheet.UsedRange         Set rng = .Cells.SpecialCells(xlCellTypeFormulas, 23)

End With     Application.ScreenUpdating = False

For Each c In rng         c.ShowPrecedents      Next End Sub

宏确定工作表中的哪些单元格包含公式(只有包含公式的单元格可以具有先例),然后逐步浏览每个这些单元格,以打开先例的显示。

当然,问题在于这种方法并不能完全满足Gavin的要求。加文处理数据时,可能不会为每个单元打开先例,而只会为某些单元打开先例。该宏打开工作表中所有可能的单元格的优先显示。如果只想显示某些单元格的先例,则需要在宏中指定单元格。

Sub ShowTracePrecendents2()

Dim rng As Range     Dim c As Range

Set rng = Range("G1:G5,G7:G8")

For Each c In rng         c.ShowPrecedents     Next End Sub

为了有效地使用宏,您需要更改设置rng变量的行,以便它引用要显示其先例的单元格。

无论使用哪个宏,都可以创建“自动打开”

宏(如其他_ExcelTips_中所述)将在打开工作簿时自动运行它。

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本提示(13161)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。