找到两个值后如何使用索引和匹配

时间:2019-03-28 21:32:52

标签: excel excel-formula

Case

我有2个表:一个用于咨询(表1),另一个作为数据库(表2)。

两个表都有一个“参考”列。我希望使用表1的“参考”列中的值在表2的“参考”列中找到一个值。

表2中还有2列:“第一出现结果”和“最终结果”。一旦在表2中找到“参考”值,我想接收“最终结果”。如果“最终结果”为空,我想接收“第一个出现的结果”。

真正的问题是我在表2中有多行具有相同的“参考”值。另外,我必须没有任何辅助列。

我将附上一张可能有助于解释的图片。 预先感谢

我尝试将lookV和index与match一起使用,但是由于具有相同引用值的多行,它会飞起来。

1 个答案:

答案 0 :(得分:0)

UDF呢?不是最动态的解决方案,但它适用于示例中的静态工作表设置:

Function RETURNRESULT(refrng1 As Range, refrng2 As Range) As String

    Dim cell As Range

    For Each cell In refrng2
        If refrng1 = cell Then
            If cell.Offset(0, 7).Value <> "" Then
                RETURNRESULT = cell.Offset(0, 7).Value
                Exit For
            ElseIf cell.Offset(0, 6).Value <> "" And finalresult = False Then
                RETURNRESULT = cell.Offset(0, 6).Value
            End If
        End If
    Next cell

End Function

img1