在EXCEL表格中如何有条件引用数据并把符合条件的数据按照与按自动顺序排列在另一个子表中?

表1里有A列合同编号,B列合同签订日期。要求:在表2中显示合同签订日期为2019年的合同编号,并按顺序排列。您看可否实现?谢谢了。

做个样表,详见截图,为方便理解,做在同一张表上,如两张表,只需将数据前加上工作表名即可

2输入

=INDEX($A:$A,SMALL(IF(YEAR($B$2:$B$100)=E$1,ROW($2:$100),200),ROW(A1)))&""

数组公式,先按住CTRL+SHIFT,最后回车,使得编辑栏公式两端出现花括号{ }

公式右拉再下拉到无数据

追问

麻烦再问一下 为啥我的显示下面这样呢

追答

将销售合同主表截图(带几行数据)发上来我看看

追问

表格太长了 我隐藏了中间

您帮我看下为啥这样

追答

将公式里的year(销售合同主表1106!$V$2:销售合同主表1106!$V$10000)=2019
改为 year(销售合同主表1106!$V$2:$V$10000)=2019
然后再看看日期单元格格式是否为“日期”

追问

麻烦再帮忙看一下 还是不行

追答

看看日期单元格格式是否为“日期”

追问

是日期 您再帮看看

追答

哈,找到原因了,你的表不是日期格式,日期格式应为2017/8/29,所以呢公式要改一下
将year(销售合同主表1106!$V$2:$V$10000)=2019改为
left(销售合同主表1106!$V$2:$V$10000,4)="2019" 或
--left(销售合同主表1106!$V$2:$V$10000,4)=2019 都可以

追问

高手高手 膜拜 数据出来了 太感谢了

追答

数据出来了就该采纳一下最好

追问

高手 再问一下,我想再加一个条件, 取2019 事业部1的合同编号显示。您能帮处理下吗?

追答

修改条件就成
if((left(销售合同主表1106!$V$2:$V$10000,4)="2019")*(销售合同主表1106!$b$2:$b$10000="事业部1"),row

追问

新增条件里更新了函数,但是显示不出来合同编号 您再帮我看看 谢谢了

追答

我不知道事业部在那一列,改成在的那一列,好像是在X列?签约日期好像也不对,W列?你自己改吧

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-12-18
应该不难实现,
需要实际数据.
才好下手追问

您看这样可否? 要在表二中显示成这样的结果

相似回答