Цветные ячейки (значения ячейки содержат десятичный процент) в зависимости от условия - PullRequest
1 голос
/ 29 сентября 2019

Я работаю над одним из улучшений в макросах, где мне нужно изменить цвет шрифта ячейки в зависимости от значения: Если больше 5, то «КРАСНЫЙ» Если меньше 1, то «ЯНТАРЬ»

Ячейкасодержит следующие значения:

CB
0.30%
3.00%
3.00%
2.00%
2.00%
2.00%
3.00%
0.00%
0.00%
6.00%
0.00%
70.00%
70.00%
45.00%

Код:

Dim My_Range As Range
Set My_Range = ThisWorkbook.Sheets("Schemes").Range("CB15:CB100")

    Dim BValue As String
    'Dim AValue_1 As String
    'Dim AValue_2 As Integer
    'Dim AValue_3 As Integer

    For Each Cell In My_Range
        BValue = Cell.Value
        'AValue_1 = CStr(Left(BValue, Len(BValue) - 1))
        'AValue_2 = InStr(1, AValue_1, ".")
        'AValue_3 = Left(AValue_1, AValue_2 - 1)
        'AValue_3 = AValue_2(0)


        If BValue > 5 Then
            Cell.Font.ColorIndex = 0
            Cell.Font.Bold = True
        Else
            Cell.Font.ColorIndex = xlNone
        End If

        If BValue < 1 Then
            Cell.Font.ColorIndex = 44
            Cell.Font.Bold = True
        Else
            Cell.Font.ColorIndex = xlNone
        End If

    Next

Не получается соответствующий результат, поскольку ячейка содержит дробные процентные значения. Не могли бы вы, ребята, помочь мне.

1 Ответ

0 голосов
/ 29 сентября 2019

Значения в процентах меньше единицы: 5% = 0,05 и 100% = 1 - попробуйте это вместо этого

Dim My_Range As Range
Set My_Range = ThisWorkbook.Sheets("Schemes").Range("CB15:CB100")

For Each Cell In My_Range
    Select Case Cell.Value
        Case Is > 0.05
            Cell.Font.ColorIndex = 0 ' should be RED, but 0 is BLACK
            Cell.Font.Bold = True
        Case Is < 0.01
            Cell.Font.ColorIndex = 44 ' AMBER
            Cell.Font.Bold = True
        Case Else
            Cell.Font.ColorIndex = xlNone
    End Select
Next
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...