Как правильно сравнить два значения? - PullRequest
0 голосов
/ 14 июня 2019

У меня есть процедура Excel VBA, которая должна сравнивать значения двух ячеек. В моем случае это скаляры, от 1 до 3. По сути, они являются ответами на вопросы. Если они совпадают, то я хочу покрасить определенную ячейку green, иначе я хочу сделать ее red. Что-то не так с моим синтаксисом?

Sub CheckBold()
'
' CheckBold Macro
'

'
 Row = ActiveCell.Row
 If ThisWorkbook.Sheets(1).Range("D" & CStr(ActiveCell.Row)).Font.Bold Then
 ActiveCell.Value = 1
 End If
 If ThisWorkbook.Sheets(1).Range("E" & CStr(ActiveCell.Row)).Font.Bold Then
 ActiveCell.Value = 2
 End If
 If ThisWorkbook.Sheets(1).Range("F" & CStr(ActiveCell.Row)).Font.Bold Then
 ActiveCell.Value = 3
 End If

  ActiveCell.Value = ThisWorkbook.Sheets(3).Range("A" & CStr(ActiveCell.Row)).Value & ActiveCell.Value

If CInt(ActiveCell.Value) = CInt(ThisWorkbook.Sheets(3).Range("A" & CStr(ActiveCell.Row)).Value) Then
    ActiveCell.Interior.Color = RGB(0, 180, 0)
Else
    ActiveCell.Interior.Color = RGB(180, 0, 0)
End If



End Sub

Что происходит, так это то, что код всегда идет в ветке Then оператора if, хотя значения разные. Почему у меня такое поведение?

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