代码之家  ›  专栏  ›  技术社区  ›  Alain Rivero Duclaud

Xlookup多种匹配类型

  •  0
  • Alain Rivero Duclaud  · 技术社区  · 1 年前

    我有一个表,里面有一个项目列表,以及项目更改价格的日期,但并非所有项目每天都会更改价格,所以我试图设置一个公式,返回项目的精确匹配值和日期的精确匹配或下一个最小值,我试图使用类似于此的Xlookup

    =Xlookup(1,(A1=Y1:Y10)*(B1=Z1:Z10),X1:X10,0,-1)

    项目 日期 价格
    苹果 01/01/2025 10
    苹果 01/07/2025 1000
    橙色 01/07/2025 5.
    香蕉 01/06/2025 200
    项目 日期 Xlookup 逻辑
    苹果 01/06/2025 200 退换商品 香蕉从01/06/2025 而不是确切的项目和前一个日期 苹果01/01/2025

    然而,这似乎返回了日期和项目的下一个最接近的匹配,这可能是一个完全不同的项目,理想情况下,我希望有一个Xlookup,在一个项目上进行精确匹配,在另一个项目中进行-1匹配,这有可能吗?

    我还尝试了Index Xmatch,但它真的希望有一行和一列,使用与Xlookup相同的方法也会遇到同样的问题。

    我能想到的一个可能的解决方案是将结果转换为交叉表,但表格可能会变得相当大,所以我宁愿避免这种情况。

    非常感谢。

    1 回复  |  直到 1 年前
        1
  •  0
  •   Harun24hr    1 年前

    尝试 FILTER() 和 SORT() 功能。

    =@CHOOSECOLS(SORT(FILTER(Y2:AA5,(Y2:Y5=A2)*(Z2:Z5<=B2)),2,-1),-1)
    

    enter image description here

    推荐文章