基本上我有一张非常简单的表,但我正在努力:(
基本上有一些标题,如“名称”,“经理”,“信用”
我得到一张包含所有姓名等的列表,并想要一个宏来检查姓名是否在列表中,然后将信用单元从名为“Agent”的工作表复制到名为“Credit”的工作表中已经尝试了大量的解决方案,但无济于事。
由于
答案 0 :(得分:1)
将您共享的Excel文件作为参考,您可以使用以下,前提是工作表Agent
上的第一列按升序排序。在工作表C2
的单元格Credit
中,输入
=LOOKUP($A2,Agent!$A:$A,Agent!$B:$B)
然后选择该单元格C2
并向下拖动右下角。这是最简单的版本,但如果在工作表Credit
上找不到工作表Agent
中的名称,则会产生奇怪的结果。
=IF($A2<>LOOKUP($A2,Agent!$A:$A,Agent!$A:$A),"Not Found",LOOKUP($A2,Agent!$A:$A,Agent!$B:$B))
if的第一部分检查是否在工作表Agent
上找到代理名称。如果不是,则结果为“Not Found”,否则结果与上一个函数中的查找相同。
答案 1 :(得分:1)
在阅读lori_m的评论后查找LOOKUP和VLOOKUP时,我没有找到任何关于相对表现的信息。大多数情况下,我发现LOOKUP仍然只在Excel中用于传统兼容性,VLOOKUP或HLOOKUP更灵活。
但是,我确实遇到了一系列从http://exceluser.com/blog/420/excel%E2%80%99s-vlookup-vs-index-match-functions.html开始的文章,这些文章表明INDEX和MATCH函数提供了更好的解决方案。
答案 2 :(得分:0)
你试过Lookup
吗?此函数在单个行或列中查找值,并在不同的行或列中对其进行一些匹配。
答案 3 :(得分:0)
你需要的关键功能是VLOOKUP,它接受Lookup_value(搜索可以作为单元格引用的名称),Table_array(要查看的范围 - 它在Lookup_value的第一列中搜索,返回第一个字母匹配或超过Lookup_value的第一个值,因此必须对列表进行排序,并将结果与Lookup_value进行比较以查看它们是否真正匹配)和Col_index_number(第一列为1 - 它从此列返回值)。
=IF(VLOOKUP(A2, Agent!$A:$B,1)=A2,VLOOKUP(A2, Agent!$A:$B,2),"No match")
此示例将在代理程序表的A列中查找当前工作表的A1中的值,并从代理工作表的相应B列返回值,如果没有,则返回“不匹配”。< / p>