求vba代码--如何(作用于整个工作簿)查找工作表中公式所引用的单元格并标上颜色

如题所述

第1个回答  2014-02-14

这个问题问的好,很典型!

Sub 查找工作表引用单元格()

    Dim qsh As Integer, qsl As Integer, hs As Long, ls As Long   '定义数据区域的起始行、起始列、行数、列数

    Debug.Print ActiveSheet.Name, ActiveSheet.UsedRange.Address

    qsh = ActiveSheet.UsedRange.Column

    qsl = ActiveSheet.UsedRange.Column

    hs = ActiveSheet.UsedRange.Rows.Count

    ls = ActiveSheet.UsedRange.Columns.Count

    Debug.Print qsh, qsl, hs, ls

    For j = qsl To (qsl + ls - 1) '先列

        For i = qsh To (qsh + hs - 1) '后行

            If ActiveSheet.Cells(i, j).HasFormula Then     '判断单元格是否包含公式

                ActiveSheet.Cells(i, j).ShowPrecedents     '显示追踪引用箭头

                ActiveSheet.Cells(i, j).DirectPrecedents.Interior.Color = RGB(146, 208, 80)   '浅绿色

            End If

        Next

    Next

End Sub

Sub 查找工作簿引用单元格()

    For n = 1 To ActiveWorkbook.Worksheets().Count

        Worksheets(n).Activate     '逐个选中工作表进行设置

        Call 查找工作表引用单元格

    Next

    Worksheets(1).Activate

End Sub

如果不想显示追踪引用箭头,注释掉这一行即可。

追问

您好,跨表还是不能实现喔,(要能在工作簿当中任意实现该功能)谢谢。

追答

如果是跨表引用,确实不能实现。
如果想随时使用这项功能,知道什么叫加载宏吗,自己去研究吧。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网