【问题标题】:INDEX MATCH with different sizes of arrays索引匹配不同大小的数组
【发布时间】:2015-06-14 18:14:33
【问题描述】:

我正在尝试将几只股票的股息与一系列日期联系起来。股息相隔几个月,其中 A 列是日期,B 列是股息金额。在过去的 5 年中,每只股票大约有 10-20 次股息支付。我现在正试图在每日时间轴上分配这些股息支付,其中 A 列显示从今天到 2005 年的每日日期(3818 行)。

我尝试使用以下公式对 INDEX/MATCH 执行此操作:

=INDEX([A68U.SI.csv]A68U.SI!$B$2:$B$13,MATCH([A68U.SI.csv]A68U.SI!$A2,$A2:$A3818))

但是,我收到 #REF 错误。这似乎是错误的做法。有人有想法吗?非常感谢!

【问题讨论】:

    标签: excel


    【解决方案1】:

    使用VLOOKUP:

    =VLOOKUP(A2,[A68U.SI.csv]A68U.SI!$A$2:$B$13,2,FALSE)
    

    删除没有支付股息的日期错误:

    =IFERROR(VLOOKUP(A2,[A68U.SI.csv]A68U.SI!$A$2:$B$13,2,FALSE),"")
    

    如果您在同一日期有多个支付股息,则必须使用不同的方式。

    【讨论】:

      【解决方案2】:

      我认为您需要切换它,例如在B2复制下来

      =LOOKUP(A2,[A68U.SI.csv]A68U.SI!$A$2:$B$13)

      这将在您的付款表中查找A2 日期并找到该日期的相关股息。

      【讨论】:

      • 不幸的是,这不起作用。我在某个时间点的所有日期都得到相同的值,然后得到 #N/A。
      • 好的,我可能误解了你的要求——你说你想分配付款,我解释为找到特定日期的股息——不是这样吗?也许您可以编辑您的问题以显示一些示例数据和所需的输出
      • 刚刚找到答案。我需要反转 INDEX MATCH,然后它才能工作。谢谢!
      • 那你用了什么公式? - LOOKUP 可以达到与 INDEX/MATCH 相同的效果,假设您根据问题中的公式使用没有第三个参数的 MATCH(因此默认为 1 或 TRUE)
      • 我使用了以下公式:=INDEX([A68U.SI.csv]A68U.SI!$B$2:$B$13,MATCH($A2,[A68U.SI.csv]A68U. SI!$A2:$A3818))
      猜你喜欢
      • 1970-01-01
      • 2022-12-03
      • 2021-01-31
      • 2021-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-31
      • 1970-01-01
      相关资源
      最近更新 更多