匹配范围

时间:2013-11-18 18:07:43

标签: excel vba match

我想知道是否有匹配范围的方法?例如,我有数据 A1:F1和我想在另一张表或不同范围内找到并匹​​配这些值或此范围(完全相同的值,以相同的顺序排列)(例如:H15:M15)。

我该怎么做?我知道如何查找和匹配单个值。

3 个答案:

答案 0 :(得分:1)

Function RowsMatch(rng1, rng2)
    RowsMatch = join(application.transpose(application.transpose(rng1)),chr(0))= _
                join(application.transpose(application.transpose(rng2)),chr(0))

End Function

答案 1 :(得分:0)

在excel公式中,您可以使用类似

的内容
=SUMPRODUCT(--(A1:F1=H15:M15))

并检查它是否等于细胞数量 在VBA中,因为WorksheetFunction.SumProduct是一个难以编程的人,你可以使用

evaluate("SUMPRODUCT(--(A1:F1=H15:M15))")

并再次检查结果是否是要比较的细胞数

答案 2 :(得分:-1)

您可以同时复制和粘贴单个范围但不能复制多个范围。

要复制和粘贴,请使用范围类的.copy和.paste方法:

Dim rng as Range
rng = Range("B4")
rng.Copy

Dim difrng as Range
difrng = Range("B5")
difrng.Paste

请注意,我没有引用范围存在的工作簿或工作表,但您需要指定。

那么你的问题就变成了选择正确范围的问题了,作为上面提到的评论者,你可以使用某种循环来实现它。