首页 > 解决方案 > 如何正确比较两个值?

问题描述

我有一个 Excel VBA 程序,它应该比较两个单元格的值。就我而言,它们是标量,范围从13。基本上,它们是问题的答案。如果它们匹配,那么我想为某个单元格着色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

发生的情况是代码总是在Thenif 的分支上,即使值不同。为什么我会出现这种行为?

标签: excelvba

解决方案


推荐阅读