繁体   English   中英

当行值更改时,跨多行和多列EXCEL的阴影单元格

[英]Shading cells when row value changes, across multiple rows AND columns EXCEL

我需要能够

-比较每列的行数据(从单元格B2到末尾,即整个工作表减去第一行和第一列)

-如果所述列中没有数据更改; 然后突出显示列标题

-如果数据改变; 突出显示数据正在更改的第一个单元格

请参见示例,请记住我拥有的excel工作表要大得多,就像巨大的一样,因此使用参考列是行不通的,每列的多个公式也行不通。 我发现它适用于单列及其出色的= INDIRECT(“ A”&ROW())<> INDIRECT(“ A”&(ROW()-1)),但我无法将其应用于100多个列,实际的。 请帮忙。

在此处输入图片说明 在此处输入图片说明

Bahh,我自己写了一篇文章,它在行数或列数上还不是动态的,但是它可以完成工作,我想我不必遍历行和列,但是我不知道该怎么做。以其他方式足够快地参考单元位置。 比RobB解决方案更好,拍打他的牙龈。

Private Sub CommandButton1_Click()
Dim i As Long
Dim j As Long
Dim flag As Boolean
Columns().Font.Color = vbBlack
Rows().Interior.ColorIndex = 0
flag = False
For j = 2 To 120 'Must hard code number of columns
    For i = 3 To 3300 'Must hard code numbe of rows
        If Cells(i, j).Value <> Cells(i - 1, j) And Not IsEmpty(Cells(i, j).Value) Then
            Cells(i, j).Interior.ColorIndex = 37
            flag = True
        Else
            If flag Then
                Cells(1, j).Interior.ColorIndex = 36
            End If
        End If

    Next i
    flag = False
Next j
End Sub

对于宏,这听起来很简单-尽管这需要您手动执行一些操作(例如,按一个键)才能启动比较。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM