首页 文章

遍历不同工作表中的单元格来解析字符串

提问于
浏览
0

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

  • 遍历工作表1上的一行 .

  • 如果该行中的姓氏与工作表2上的名称匹配,则将列单元格标记为'Yes'

1 回答

  • 2

    最有效的方法是使用工作表函数而不是诉诸VBA . 在“是/否”列中输入以下公式并填写 .

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

    这里 A1 是您要查找的Sheet2的名称, Sheet1!$A$1:$A$5 是您要查看的Sheet1上的名称列表 .

    EDIT :

    如果您只想匹配Sheet1上列表的第一个单词,您仍然可以使用数组公式来执行此操作 .

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

    按Ctrl Shift Enter输入此数组公式 . 公式应显示在公式栏中的内 .

    如果您的名字列表的格式为“Last First”,则可以使用 . 相反,如果名称的格式为“Last,First”,则可以使用以下代码 .

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

相关问题