Excel 将同一工作表中的一行单元格与另一行单元格进行比较

Excel 将同一工作表中的一行单元格与另一行单元格进行比较,excel,vba,Excel,Vba,感谢本论坛的所有优秀成员。我需要一些帮助。我想比较同一张表中一行和另一行中的几个单元格。 我想看看C1:G1是否包含与C2:G2相同的值 非常感谢您的帮助 再次感谢在单元格C3中插入公式:=IF(C1=C2,1,0)并将其扩展到单元格G3。“1”表示匹配,“0”表示不匹配。您也可以这样做,例如:=IF(C1=C2,0,1)然后对单元格应用求和运算符:SUM(C3:G3)。“0”表示完全匹配,任何非零表示不匹配的单元格数 也可以在VBA中执行此操作: Function IsEqual() As B

感谢本论坛的所有优秀成员。我需要一些帮助。我想比较同一张表中一行和另一行中的几个单元格。 我想看看C1:G1是否包含与C2:G2相同的值

非常感谢您的帮助


再次感谢

在单元格C3中插入公式:
=IF(C1=C2,1,0)
并将其扩展到单元格G3。“1”表示匹配,“0”表示不匹配。您也可以这样做,例如:
=IF(C1=C2,0,1)
然后对单元格应用求和运算符:
SUM(C3:G3)
。“0”表示完全匹配,任何非零表示不匹配的单元格数

也可以在VBA中执行此操作:

Function IsEqual() As Boolean

If Range("C1").Value & Range("D1").Value & Range("E1").Value & Range("F1").Value & Range("G1").Value = Range("C2").Value & Range("D2").Value & Range("E2").Value & Range("F2").Value & Range("G2").Value Then
    IsEqual = True
Else
    IsEqual = False
End If

End Function 

Rgds,

这将满足您的需求

Sub check()
Dim checkArr1, checkArr2 As Variant
Dim l As Long
Dim ElementsSame As Boolean

checkArr1 = Array(Range("C1"), Range("D1"), Range("E1"), Range("F1"), Range("G1"))
checkArr2 = Array(Range("C2"), Range("D2"), Range("E2"), Range("F2"), Range("G2"))

ElementsSame = True
For l = 0 To 4 'C to G is 5 (shifted left because array)
    If checkArr1(l) <> checkArr2(l) Then
        ElementsSame = False
        Exit For
    End If
Next l

If ElementsSame = True Then
    'do the stuff you want to do
    Range("A1") = 1 'I did this to error trap
Else
    Range("A1") = 0 'I did this to error trap
End If

End Sub
子检查()
Dim checkArr1、checkArr2作为变型
我和你一样长
Dim元素名称为布尔值
checkArr1=阵列(范围(“C1”)、范围(“D1”)、范围(“E1”)、范围(“F1”)、范围(“G1”))
checkArr2=阵列(范围(“C2”)、范围(“D2”)、范围(“E2”)、范围(“F2”)、范围(“G2”))
elementsName=True
对于l=0到4’,C到G是5(因为数组而向左移动)
如果checkArr1(l)checkArr2(l),则
ElementsSame=False
退出
如果结束
下一个l
如果elementsName=True,则
“做你想做的事
范围(“A1”)=1'我这样做是为了错误陷阱
其他的
范围(“A1”)=0'我这样做是为了错误陷阱
如果结束
端接头

可能重复@simoco他只想要某些单元格,而不是整行。@tannman357,没关系,逻辑是一样的。。把整排都换成Range哦…是的,这样行。我写了一些代码来完成他的任务,所以我想这并不重要……谢谢你的回复,@tannman357我已经看到了这一点,我用我微薄的知识尝试了range,但它对我不起作用。请将代码转换为一个范围。感谢您的回复,我需要在整个工作表中循环查找匹配的行,因此在单元格中插入公式不适合这种情况。我已根据您的要求扩展了我的答案:请参阅修改后的帖子。Rgds,我将尝试此代码。我需要在整个工作表中循环,以确定在此范围内有多少行具有相同的值。