我想在列表中找到与特定条件相匹配的第n个值,并将这些值分别打印在单独的工作表中的不同位置。在符合特定条件的列表中显示第n个值[EXCEL]
更具体地说,我有一个以数字或PF开头的发票号码列表,我希望以PF开头的第一个(或第二个,第三个等)值显示在形式发票工作表上,第一个(或第二,第三等)值以数字开头,以显示在发票工作表中。有
此刻,我喜欢所以选择发票编号:
发票#
PF17-0982
43256
65342
96038
PF16-0934
10293
而且我想打印此列表匹配我给准则第n值,所以无论是从一个数字开始还是从PF开始,在一个单独的工作表中。
起初我试图
=IF(LEFT('Top Sheet'!S5)="P",'Top Sheet'!S5,"")
其工作是发现号与PF但显然只有在列表中的第一个单元格开始。 我也有
=IF(ISNUMBER(LEFT('Top Sheet'!S5)*1),'Top Sheet'!S5,"")
这又奇妙的作品在列表中的第一个值而不是其他东西。
因此,我自然搜索并尝试使用INDEX和MATCH和SEARCH功能,如https://exceljet.net/formula/get-first-match-cell-contains,但我不希望输出是依赖于发票号码列表中仅一个值的另一个列表。不过,我不介意有一个中间列表(例如TRUE和FALSE值列表),这将最终导致我有一个单一的输出。我有这个名单,在其使用完成的时刻:
=SUMPRODUCT(--ISNUMBER(SEARCH({"PF"},'Top Sheet'!S5)))>0
而且,这里带给我的,我已经试过上述技术的各种变化和绝望的失败。我要么得到一些描述的错误,要么只是TRUE和FALSE值。我希望这是有道理的。
您是否考虑使用数据透视表(或Power Query)过滤列表,或者您需要过滤的列表是动态的? – Slai
嗨,你可以扩展一点吗?我不熟悉数据透视表或Power Query。另外,感谢编辑哈哈。 – Ella