遍历不同工作表中的单元格来parsingstring

我有两个工作表:一个有一个列(是/否),第二个是人员列表。 如果用户在工作表2上的姓氏也在工作表1上,我想将该列标记为“是”。 有没有一种方法来编写脚本? 理想情况下,我想这样做:

  • 在表1中迭代遍历。
  • 如果该行中的姓氏与表2中的姓名匹配,则将列单元格标记为“是”

执行此操作的最有效方法是使用工作表函数而不是使用VBA。 在“是/否”列中input以下公式并填写。

 =IF(ISERROR(MATCH(A1,Sheet1!$A$1:$A$5,0)),"No","Yes") 

这里A1是你正在寻找的Sheet2的名字, Sheet1!$A$1:$A$5是Sheet1上你想查看的名字列表。

编辑:

如果要仅匹配Sheet1上的列表的第一个单词,您仍然可以使用数组公式。

 =IF(ISERROR(MATCH(A1,LEFT(Sheet1!$A$1:$A$5,FIND(" ",Sheet1!$A$1:$A$5)-1),0)),"No","Yes") 

按Ctrl + Shift + Enter将其input为数组公式。 该公式应显示在公式栏中的{…}内。

如果你的名字列表的forms是“最后的第一”,这将工作。 相反,如果名称的格式为“Last,First”,则可以使用以下代码。

 =IF(ISERROR(MATCH(A1,LEFT(Sheet1!$A$1:$A$5,FIND(", ",Sheet1!$A$1:$A$5)-1),0)),"No","Yes")