使用vba比较excel中的2个单元格

我想比较两个单元格的值,看看它们是否匹配。 我知道如何做到这一点,但我不知道如何把它的VBA代码。

input输出:

  1. 单元格A1的值已经在excel中。
  2. 手动在单元格B1中input一个值。
  3. 点击一个button_click子查看2个单元格的值是否相同。
  4. 在单元格C1上显示“是”或“否”

Excel公式:

=IF(A1=B1,"yes","no") 

您可以在VBA中使用IIFfunction。 它与Excel IF类似

 [c1] = IIf([a1] = [b1], "Yes", "No") 

试试这个:

 Sub CompareCells() If [a1] = [b1] Then [c1] = "yes" Else [c1] = "no" End If End Sub 

将此代码分配给button。

这是一个更改子(代码必须去在工作表模块)。 它只会在您更改B列中的单元格时激活。

 Private Sub Worksheet_Change(ByVal Target As Range) If Target is Nothing Then Exit Sub If Target.Cells.Count > 1 Then Exit Sub If Target.Column <> 2 Then Exit Sub If Cells(Target.Row, 1).Value = Cells(Target.Row, 2).Value Then Cells(Target.Row, 3).Value = "Yes" Else Cells(Target.Row, 3).Value = "No" End If End Sub 

对于logging,这不使用button,但是它实现了计算目标,即在任何时候手动将数据input到Col B中的单元格中时,两个单元格是否相等。

 If (Range("A1").Value = Range("B1").Value) Then Range("C1").Value = "Yes" Else Range("C1").Value = "No" End If