如果Cell匹配另一个Cell,则复制值

时间:2015-06-12 21:53:01

标签: excel vba excel-vba

我似乎无法想出这个。我有两个工作表和一些相同的ID,但如果一个表上的id与另一个表匹配,我需要它来查看状态是否为Routed,如果是,那么我需要在相关数字的B列中放置一个y。

例如:

Worksheet 1  
-----A--------B  
1--**4345**---Routed  
2--5643---Completed  
3--3423---Routed  
4--2342---Routed  



Worksheet 2  
-----A-------B  
1--9876----n  
2--5678----n  
3--**4345**----y  
4--1234----n  

因此,如果两个工作表中的A列匹配,那么我需要它来搜索工作表1中B列中的路由。

如果Routed这个词在那里,那么我需要它在工作表2的B列中为先前匹配的id添加“y”,否则如果找不到id或者它匹配,但没有路由(相反它)是空白或其他[完成,完成,等])然后我需要在B列中的n。

2 个答案:

答案 0 :(得分:0)

VLOOKUP()函数插入IF()函数将测试查找值是否满足指定条件,并在TRUE"y")时返回指定值或FALSE(“n”):=IF(VLOOKUP(A2, SHEET1!$A$1:$B$4, 2, FALSE)="Routed", "y", "n")。您可以将整个公式括在IFERROR()中,以便考虑Sheet2中不在Sheet1中的ID:=IFERROR(IF(VLOOKUP(A2, SHEET1!$A$1:$B$4, 2, FALSE)="Routed", "y", "n"), "n")

每条评论:如果要查找包含文本"Routed"的任何单元格(但也可能包含其他文本),您可以将VLOOKUP(. . .) = "Routed"条件更改为{{1}的测试函数找到文本:SEARCH()。同样,您可以将其括在=IF(ISNUMBER(SEARCH("Routed", VLOOKUP(A2, SHEET1!$A$1:$B$4, 2, FALSE))), "y", "n")

答案 1 :(得分:0)

这很有效。将以下公式放在Sheet2中。您可以根据需要将其粘贴为多个行,因为它是相对的。

=IF(NOT(A1=Sheet1!A1),"",IF(Sheet1!B1="routed","y","n"))