Excel formula 查找/索引/匹配

Excel formula 查找/索引/匹配,excel-formula,Excel Formula,查找标准: 不同经销商的保单期限不同。每个经销商都有自己的保单期限 根据损失日期,我需要找出损失属于哪个时期 数据集: 这是我需要更新期间和年份的文件 另一个文件,其中包含保单开始和结束期间的详细信息以及该保单所属的年份。对于不同的OEM,策略启动期不同。根据损失日期,我们需要找出损失日期属于哪个时期 尝试使用索引、匹配和查找功能 =INDEX(PeriodLookup[[#All],[OEM]:[Policy Year]],MATCH([@[OEM Name** Updated]],Per

查找标准:

  • 不同经销商的保单期限不同。每个经销商都有自己的保单期限
  • 根据损失日期,我需要找出损失属于哪个时期
  • 数据集:

    这是我需要更新期间和年份的文件

    另一个文件,其中包含保单开始和结束期间的详细信息以及该保单所属的年份。对于不同的OEM,策略启动期不同。根据损失日期,我们需要找出损失日期属于哪个时期

    尝试使用索引、匹配和查找功能

    =INDEX(PeriodLookup[[#All],[OEM]:[Policy Year]],MATCH([@[OEM Name** Updated]],PeriodLookup[[#All],[OEM]],0),MATCH(Attach_C[[#All],[Date of Loss]],PeriodLookup[[#All],[Effective]],1))
    
    以下是预期结果:


    假设您有以下命名范围

    {=IFERROR(YEAR(VLOOKUP(B2,IF(OEM=C2,Effective),1,1)),"NA")}
    
    {=IFERROR(INDEX(Policy_Period,MATCH(D2,IF((OEM=C2),YEAR(Effective)),0)),"")}
    
    • OEM
      PeriodLookup
      表中的
      OEM
    • effect
      PeriodLookup
      表中的
      effect
    • Policy\u Period
      Period lookup
      表中的
      Policy Period
    方法1:在排序数据中查找
    年份

    如果您的数据已按名称分组并按日期从最小到最大排序(这很重要),您可以使用VLOOKUP使用If函数在过滤的范围内查找最近的生效日期,然后使用YEAR函数查找生效日期的年份。下面是要放入单元格
    D2
    以查找年份的公式:

    {=IFERROR(YEAR(VLOOKUP(B2,IF(OEM=C2,Effective),1,1)),"NA")}
    
    {=IFERROR(INDEX(Policy_Period,MATCH(D2,IF((OEM=C2),YEAR(Effective)),0)),"")}
    
    方法2:在随机排序的数据中查找
    年份

    如果您的数据是随机排序的,您可以使用聚合函数首先对过滤后的有效日期范围进行排序,然后使用索引+匹配返回该范围中最接近的匹配项。如果没有匹配项,以下数组公式将返回
    NA

    {=IFERROR(YEAR(INDEX(AGGREGATE(15,6,IF(OEM=C2,Effective),ROW($A$1:INDEX($A:$A,ROWS(OEM)))),MATCH(B2,AGGREGATE(15,6,IF(OEM=C2,Effective),ROW($A$1:INDEX($A:$A,ROWS(OEM)))),1))),"NA")}
    
    一旦知道年份,您可以使用索引+匹配在另一个过滤的范围内返回相应的保单期限。下面是放入单元格
    E2
    以查找周期的公式:

    {=IFERROR(YEAR(VLOOKUP(B2,IF(OEM=C2,Effective),1,1)),"NA")}
    
    {=IFERROR(INDEX(Policy_Period,MATCH(D2,IF((OEM=C2),YEAR(Effective)),0)),"")}
    
    提醒一下,所有使用的公式都是数组公式,所以您需要按 输入公式后,在公式栏中按Ctrl+Shift+Enter,否则将不会返回正确的结果。然后,您可以将它们向下拖动以应用于整个系统

    方法1的屏幕截图

    方法2的屏幕截图


    如果你有任何问题,请告诉我。干杯:)

    请更新您的第一张图片,以在第二张图片的
    期间
    列中显示预期结果。另外,请发布您的
    index+match
    公式,以便我们找出哪里出了问题?我已经更新了它。有没有任何方法可以使公式不基于排序?@Saagar是的。我用第二种方法更新了我的答案,从随机排序的数据集中查找
    年份
    。正如您所看到的,这是一个更长、更复杂的公式,因为我需要先对过滤后的数据进行排序,然后找到最接近的匹配项,而我的第一种方法只需要从排序后的数据集中找到最接近的匹配项。如果您有进一步的疑问,请告诉我。