excel如何自动筛选引用符合条件的另一种表格中的数据?

请教,我想制作一张excel表格,希望实现以下功能:一、在表格二中输入工序号如OP10则表格二中编号、检查项目、检查规格、检查手段等直接引用表格一中的编号、产品、产品/过程/规范/公差、评价/测量技术;
二、每当表格一中被表格二选定的工序发生变化如增加了几行或删除了几行或变化了内容,那么表格二中也要相应的跟着增加了几行或删除了几行或变化了内容请百度里的达人出来指点一下该如何实现?

要查找并不难,但有四个原因使问题难度增加,或提问没说明白:

一个是你的工作表设计不规范,合并单元格过多,如表1中的第7行和第8行,那些表头数据到在哪一行?可能有的在第7行,有的在第8行,公式要引用它们来查找就不好弄了。

另一个是表2中的表头与表1中表头并不对应,如何查找,要用一个公式查找,必须是完全一致,特殊情况下也应部分相同(但会增加公式,实无必要)。下面的截图中就保留了你表2中的一些表头,得到的结果就是错误值,没处理,就是为了说明这个问题。

第三,提问中所说的“编号”,在表1中除了A9中与表2中完全相同外,表1中的H列编号是否都是如图所示,“-”前面部分即为“工序号”,否则A列的工序号下有空白单元格,也会增加公式极大的难度。

第四,要引用的数据是以编号行为准,还是以有数据行为准,截图中H列0P10的到第17行,而数据只到第12行,下面的公式按到12行来考虑。

如图,表2中

A4=INDEX(Sheet1!$H:$H,SMALL(IF((LEFT(Sheet1!H$9:H$100,IF(ISERROR(FIND("-",Sheet1!H$9:H$100)),1,FIND("-",Sheet1!H$9:H$100))-1)=$B$2)*(Sheet1!I$9:$I$100<>""),ROW($9:$100),4^8),ROW(1:1)))&""

同时按Ctrl+Shift+Enter三键输入数组公式,下拉若干行,使出现多行空白(表1中增加数据时,空白就显示数据了)

B4=IF($A4="","",INDEX(Sheet1!$I$9:$Q$100,MATCH($A4,Sheet1!$H$9:$H$100,),MATCH(Sheet2!B$3,Sheet1!$I$8:$V$8,)))

右拉到要引用数据的最右列,再一起下拉到与A列一样的行数。

公式按表1的表头在第8行,如果在第7行,自己修改公式。

追问

谢谢,能用,但是好像必须表一的表头与表二的表头一样时下面的内容才会跳出来,但是我的表格一与表格二一些内容是一样的只是称呼上有些不同,表格一是一份整体的资料,表格二是从表格一中剥离出来的发放给各个工位的检验卡片,我的目的是希望自己只要制作好总体的表格一,表二让他自动生成,这样既减少了重复劳动,也减少了因修改而导致两份文件内容对不上的问题,要是能发excel,我真想发上来让您帮我看看。

追答

为何不做一样的表头呢?没办法做一个的话,就只能表2中每列一个公式下拉。如图,表2 的I列表头是产值,要引用表1中的过程列数据,就用公式:

I4=IF($A4="","",VLOOKUP(Sheet2!$A4,Sheet1!$H$9:$M$100,4,))

公式中的4,就是表中过程列所在的列是H列开始往右的第4列,也就是要引用数据在第几列就写数字几。

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-03-02
=sumproduct(('表1'!$A$2:$A$20000=E2)*('表1'!$G$2:$G$20000>=datevalue("2013-8-1"))*('表1'!$G$2:$G$20000<=datevalue("2013-8-7"))*('表1'!$I$2:$I$20000=datevalue("2013-8-7"))*'表1'!$F$2:$F$20000)

如果是07版以上,用sumifs更方便追问

你好,我试了一下没有跳出数据啊,还有你给的函数中2013-8-1 2013-8-7都是什么意思?

第2个回答  2019-03-02
有文件才方便做公式,把问题作为内容(邮件主题一定要包含“excel”,本人以此为依据辨别非垃圾邮件,以免误删),excel样表文件(示例数据,非实际数据,把现状和目标效果表示出来)作为附件发到yqch134@163.com帮你看下追问

老师已提交至您的邮箱

第3个回答  2019-03-02
《水帘洞》(又名“花果山”)
相似回答