仅在满足特定条件时才粘贴到单元格中

我正在尝试创build满足一定条件的电子邮件列表。 所以,我有三张床单。 在第一张表中,我有一个电子邮件列表。 在表2中,我有一个更大的电子邮件列表。 现在,我需要确定工作表编号1中的电子邮件是否也在工作表编号2中。如果他们是这样的,我想在工作表编号3中创build这些电子邮件的列表。

尝试 。 假设两个电子邮件列表在列A(小列表)和B(大列表)的同一张表中。 首先,我确定小列表中的电子邮件是否也在较大的列表中。 我用

= VLOOKUP(A1,$ B $ 1:$ B $ 100,1,假)

现在,我不明白如何设置一个函数,将一个电子邮件粘贴到单元格,如果从较小的列表中的电子邮件也在更大的列表中。 我想到了尝试COUNTIF和IFERROR,但不能产生任何有用的东西。 我得到的最接近的是

= IF(VLOOKUP(A1,$ B $ 1:$ B $ 100,1,假)= A1,1,0)

当小列表中的电子邮件位于更大的列表中时,这给了我1,当不是因为没有查找的时候,#N / A。 现在,而不是1秒和#N /因为我需要电子邮件本身被粘贴和IFfunction不​​喜欢范围。 任何build议,请。 你的帮助表示赞赏。

出于说明的目的,我假定小表在Sheet1的范围A1:A25中,而大表在Sheet2的A1:A100范围内。

下面的公式将插入到工作表3的单元格A1中,并复制到工作表的单元格A25(即小列表的长度)。

=IFERROR(INDEX(Sheet2!$A$1:$A$100,SMALL(IFERROR(MATCH(Sheet1!$A$1:$A$25,Sheet2!$A$1:$A$100,0),""),ROWS(A$1:A1)),1),"-") 

这是一个数组公式,需要用ControlShiftEnter组合 input

尝试以下

在工作表1单元格A1 –

 =if(iserror(vlookup(A1,$B$1:$B$100,1,false))=TRUE,0,1) 

在工作表1单元格A2中,并在页面的其余部分 –

 =if(iserror(vlookup(A1,$B$1:$B$100,1,false))=TRUE,A1,A1+1) 

确保你不使用A1的静态引用,因为我们希望它在下降的表单中变成A2等等。

在工作表3单元格A1 –

 =if(iserror(vlookup(1, 'Sheet1'!A:B,2,false))=TRUE,"",vlookup(1, 'Sheet1'!A:B,2,false)) 

在工作表3单元格A2和页面的其余部分 –

 =if(iserror(vlookup(2, 'Sheet1'!A:B,2,false))=TRUE,"",vlookup(2, 'Sheet1'!A:B,2,false)) =if(iserror(vlookup(3, 'Sheet1'!A:B,2,false))=TRUE,"",vlookup(2, 'Sheet1'!A:B,3,false)) 

如果在两个工作表中都隐藏了您正在testing的工作表1列A中的列。 这只是通过和testing是否在这两个列表中,如果不是你没有增加计数器,所以他们不会显示在表3。

在表2中,你基本上只是按照哪个电子邮件符合两个条件的顺序返回一个列表。 这就是为什么你需要增加查找值。