Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 通过宏在整个工作表上设置条件格式_Vba_Excel - Fatal编程技术网

Vba 通过宏在整个工作表上设置条件格式

Vba 通过宏在整个工作表上设置条件格式,vba,excel,Vba,Excel,我需要你的帮助。在我的电子表格中有一个宏,当激活时,它会测试整个数据集中的单元格颜色是否为粉红色。如果找到一个,则第一个单元格标记为粉红色,提醒我在特定行的某处有一个粉红色单元格 一旦我注意到粉红色的单元格,我会再次将其标记为透明,然后转到下一个单元格 我需要在下面的工作代码中添加一个测试,看看是否没有粉红色。。即 如果单元格A9是粉红色的,则表示第9行的某个地方有一个粉红色。我需要检查它是否仍然存在,如果没有使A9透明 下面的代码是将A9标记为粉红色的代码(根据上面的示例) 代码: 要运行场景

我需要你的帮助。在我的电子表格中有一个宏,当激活时,它会测试整个数据集中的单元格颜色是否为粉红色。如果找到一个,则第一个单元格标记为粉红色,提醒我在特定行的某处有一个粉红色单元格

一旦我注意到粉红色的单元格,我会再次将其标记为透明,然后转到下一个单元格

我需要在下面的工作代码中添加一个测试,看看是否没有粉红色。。即

如果单元格A9是粉红色的,则表示第9行的某个地方有一个粉红色。我需要检查它是否仍然存在,如果没有使A9透明

下面的代码是将A9标记为粉红色的代码(根据上面的示例)

代码:

要运行场景,请执行以下操作:

第1行是标题,被排除在外,A列是标记为粉色的列

B8是粉红色的,因此当宏运行时,A8是粉红色的,D14是粉红色的,因此A14是粉红色的,A18是粉红色的,但第18行中没有更多的粉红色,因此A18是透明的,等等


有什么建议吗?

您可以运行下面的透明过程。如果A列中没有粉红色的单元格,它将使A列中的单元格透明

Sub transparent()

    Dim lastRow As Long, rcell As Range, blnRed As Boolean
    lastRow = ActiveSheet.UsedRange.Rows.Count

    For i = 1 To lastRow
        If Cells(i, 1).Interior.ColorIndex = 38 Then
            For Each rcell In Range(Cells(i, 2), Cells(i, ActiveSheet.UsedRange.Columns.Count))
                If rcell.Interior.ColorIndex = 38 Then
                    blnRed = True
                    Exit For
                Else
                    blnRed = False
                End If
            Next

            If blnRed = False Then
                Cells(i, 1).Interior.Pattern = xlNone
            End If
        End If
    Next
End Sub

您可以运行下面的透明过程。如果
列A
中没有粉红色单元格,则该过程将使该行中的单元格透明

Sub transparent()

    Dim lastRow As Long, rcell As Range, blnRed As Boolean
    lastRow = ActiveSheet.UsedRange.Rows.Count

    For i = 1 To lastRow
        If Cells(i, 1).Interior.ColorIndex = 38 Then
            For Each rcell In Range(Cells(i, 2), Cells(i, ActiveSheet.UsedRange.Columns.Count))
                If rcell.Interior.ColorIndex = 38 Then
                    blnRed = True
                    Exit For
                Else
                    blnRed = False
                End If
            Next

            If blnRed = False Then
                Cells(i, 1).Interior.Pattern = xlNone
            End If
        End If
    Next
End Sub