簡體   English   中英

Excel單元格匹配 - 從工作表復制其他數據

[英]Excel Cell Match - Copy other data from sheet

基本上我有一個非常簡單的表,但我正在努力:(

基本上有一些標題,如“名稱”,“經理”,“信用”

我得到一張包含所有名稱等列表的表格,並想要一個宏來檢查名稱是否在列表中,然后將信用單元格從名為“代理”的工作表復制到名為“信用”的工作表已嘗試加載解決方案但無濟於事。

謝謝

以您作為參考共享Excel文件,您可以使用下面的前提是你對表第一列Agent按升序進行排序 在表單Credit單元格C2中,輸入

=LOOKUP($A2,Agent!$A:$A,Agent!$B:$B)

然后選擇該單元格C2並向下拖動右下角。 這是最簡單的版本,但如果在工作表Agent上找不到工作表Credit的名稱,則會產生奇怪的結果。 一個更好的版本是

=IF($A2<>LOOKUP($A2,Agent!$A:$A,Agent!$A:$A),"Not Found",LOOKUP($A2,Agent!$A:$A,Agent!$B:$B))

if的第一部分檢查是否在工作表Agent上找到代理名稱。 如果不是,則結果為“Not Found”,否則結果與上一個函數中的查找相同。

在閱讀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函數提供更好的解決方案。

你試過Lookup嗎? 此函數在單個行或列中查找值,並在不同的行或列中對其進行一些匹配。

你需要的關鍵功能是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列返回值,如果沒有,則返回“不匹配”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM