Окраска ячейки в пределах диапазона, если эта же ячейка в пределах идентичного диапазона на другом листе уже окрашена? - PullRequest
0 голосов
/ 08 февраля 2019

В VBA я отмечаю результаты в пределах диапазона и окрашиваю их в зеленый цвет в зависимости от значения ячейки (например, значение <"28").Каждый лист (всего четыре) соответствует отдельному маркеру и помечается зеленым цветом в зависимости от значения.Все листы имеют одинаковую ось X и Y, при этом интересующий диапазон между листами одинаков (B2: BJ26).Я хотел бы сделать пятый лист, который окрашивает соответствующую ячейку в зеленый цвет, если все четыре другие соответствующие ячейки из других листов окрашены в зеленый цвет.</p>

Я мог бы сделать эту ячейку за ячейкой ....

Упрощенный пример

If Sheets(A) "B2" value < 30 AND Sheets(B) "B2" Value > 1.1 AND Sheets(C) "B2" Value < 1500 AND Sheets(D) "B2" Value > 0.30 THEN Sheets(E) "B2" interior.color = RGB(0,255,0) 

Но должен быть более эффективный способ для всех ячеек в B2: BJ26спектр.Кто-нибудь более опытный, пожалуйста, помогите мне.

Пример рабочего кода, который я использую, чтобы закрасить / пометить значения на первых четырех листах.

Worksheets("Sheet 1").Activate

Dim XXXXXXX As Range, cell As Range
Set XXXXXXX = Range("B2:BJ26")

For Each cell In XXXXXXX

If cell.Value < "28" And cell.Value > "1" Then
        cell.Interior.Color = RGB(0, 255, 0)
    End If

Next

1 Ответ

0 голосов
/ 08 февраля 2019

Этот код сделал работу за меня.Дайте мне знать, если это дало вам ожидаемые результаты.

Option Explicit

Sub ColorSheetFive()
    Dim i As Integer
    Dim m As Integer
    Dim n As Integer
    Dim allGreen As Boolean

    For m = 2 To 26
        For n = 2 To 62
            allGreen = True
            For i = 1 To 4
                If Sheets(i).Cells(m, n).Interior.Color <> RGB(0, 255, 0) Then
                    allGreen = False
                End If
            Next i
            If allGreen Then
                Sheets(5).Cells(m, n).Interior.Color = RGB(0, 255, 0)
            End If
        Next n
    Next m

    MsgBox "Color checking complete!"

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...