Excel formula Excel 2010索引匹配-多个条件

Excel formula Excel 2010索引匹配-多个条件,excel-formula,Excel Formula,我刚开始使用索引/匹配,现在遇到了一些麻烦。我有两张工作表,一张是tableact,另一张是tablewa动作包含7199行wa有25099行 我正在尝试匹配订单号和日期,以便将文档号从wa拖到act上。订单号将完全匹配,但act上的日期略小于wa上的日期 我的公式是: =INDEX(WA[BillingDocumentNumber],(MATCH([@[Customer PO Number]],WA[PO],0)+MATCH([@[GL Posting Date]],WA[CostPosted

我刚开始使用索引/匹配,现在遇到了一些麻烦。我有两张工作表,一张是table
act
,另一张是table
wa
<代码>动作包含7199行<代码>wa有25099行

我正在尝试匹配订单号和日期,以便将文档号从
wa
拖到
act
上。订单号将完全匹配,但
act
上的日期略小于
wa
上的日期

我的公式是:

=INDEX(WA[BillingDocumentNumber],(MATCH([@[Customer PO Number]],WA[PO],0)+MATCH([@[GL Posting Date]],WA[CostPostedOn],-1)))
根据我对
wa
数据的排序方式,我得到了以下结果:

  • 返回494个文档编号(有时是正确的;有时是从应返回的单元格正下方的
    wa
    单元格中提取),其余的
    #N/A
  • 大约1400个文件编号(我想都是不正确的),剩下的是
    \N/A
    \REF
  • 有人能帮我吗?我没有VBA的实际知识,但我是公司的常驻Excel“专家”(我觉得很有趣),所以我是面临解决这个问题任务的人。。。我已经梳理了现有的论坛,但我没有找到任何似乎能为我的问题提供(非VBA)解决方案的论坛。任何想法都将不胜感激


    感谢您抽出时间。

    以下是我未经测试的建议解决方案:

    {=CONCATENATE(IFERROR(IF(AND(WA[PO]=@[Customer PO Number],WA[CostPostedOn]>@[GL Posting Date]),WA[BillingDocumentNumber],""),""))}
    
    使用CTRL+SHIFT+ENTER作为数组公式输入


    这将在一个文本字符串中返回所有与采购订单号匹配且act日期早于wa日期的结果。您可以在和中修改第二个条件并添加第三个条件,以创建日期范围(即
    WA[CostPostedOn]>=@[GL过账日期]+7
    WA[CostPostedOn]试图理解问题。请列出每个表中您试图匹配的列。如果订单号是唯一的,即每个条目一个,您可以使用
    VLOOKUP
    来解决它。订单号不是唯一的——订单号可能会在数据集中出现多次,每次都有不同的日期。谢谢谢谢你的建议!我试试这个。