【发布时间】:2017-05-12 06:08:03
【问题描述】:
我在 Excel 工作簿中有 2 个工作表。 工作表“数据”和工作表“主页”。
数据:
Column B (Lookup Value) Column C (Criteria) Column D (Criteria) COLUMN E (Criteria) Column F
329115121601 3291 5555 15/12/16 50 <---- Week Number from date
在我的另一张表“主页”上,我正在尝试使用索引匹配(数组公式)从列 B 中查找数字,其中值与列 C 和 D 以及 E 或 F 中的值匹配。
首页:
Column H Column I Column J Column K
3291 5555 15/12/2016 or Week 50 {=IFERROR(INDEX(Data!$B:$B,MATCH(1,(Home!$H10=Data!$C:$C)*(Home!$I10=Data!$D:$D)*(IF(Home!$J10<55,Home!$J10,WEEKNUM(Home!$J10))=Data!$F:$F),0)),"No Po Found")}
我在我的索引匹配中嵌套了一个 if 语句,以尝试允许用户输入特定日期或该日期的周数。用户应该能够输入周数或特定日期并获得结果。
由于某种原因,如果用户输入周数,则此公式有效,但如果输入特定日期则无效。请问有人可以告诉我我哪里出错了吗?谢谢
编辑
我从 B 列中的字符串中获取日期“151216”。如下所示:
数据:(公式视图)
Column B Column E (UK Date Formatted as DD/MM/YYYY) Column F (Week Num)
329115121601 =DATE("20"&MID(B8,9,2),MID(B8,7,2),MID(B8,5,2)) =IF(F8<>"",WEEKNUM(F8,21),"")
数据:(价值视图)
Column B Column E (UK Date Formatted as DD/MM/YYYY) Column F (Week Num)
329115121601 15/12/2016 50
当使用此公式输入日期为 2016 年 12 月 15 日时,我在 F 列中的周数公式会产生值错误。不产生周数。同样,如果日期输入为 2016 年 12 月 15 日,我会在 F 列中得到一个值错误,并且不会生成周数。
但是,如果我在 E 列中手动输入我的日期为 2016 年 12 月 15 日,如果没有公式,则会呈现为 2016 年 12 月 15 日,并且在 F 列中显示周数 50。
然后在我的主页上,J 列的日期格式为英国的 DD/MM/YYYY,我必须在 j 列中输入日期为 2016 年 12 月 15 日,这将呈现为 2016 年 12 月 15 日,然后这样我得到一个结果。所以我想E列中的公式一定有问题?
用户将在主页表的 J 列中输入日期为 2016 年 12 月 15 日,而不是 2016 年 12 月 15 日。那么我该怎么做才能解决这个问题呢?
【问题讨论】:
标签: arrays excel indexing match