[英]replace a column value having duplicates with another column if matched in MS EXCEL
我有一個表,比如說有 4 列的 TABLE-1。 列是 (ID, NAME, GROUP_NAME, IS_APPROVER),ID 不是主鍵。 有許多行具有相同的 ID。 現在我得到了一個新表,比如帶有列的 TABLE-2,(NEW_ID,OLD_IDs),在這個表(TABLE-2)中,OLD_ID 是主鍵。 我必須將 TABLE-1 中的所有 ID 值替換為 NEW_ID(在 TABLE-2 中)值,並使用 OLD_ID(在 TABLE-2 中)進行比較。 我怎樣才能做到這一點?
假設您的表格如下所示:
您應該能夠結合使用 INDEX 和 MATCH 來獲得所需的結果:
=INDEX(TABLE-2[NEW_ID],(MATCH(TABLE-1[@ID],TABLE-2[OLD_IDs],0)))
如果您的數據實際上不在表格中,而是在范圍內,則一般公式為:
=INDEX(ColumnFromWhichValueShouldBeReturned, (MATCH(LookupValue, ColumnAgainstWhichToLookup, 0)))
編輯以下來自 OP 的更多信息:
如果不是所有 ID 都在 TABLE-2 中匹配,您可以使用以下內容:
=IFERROR(INDEX(TABLE-2[NEW_ID],(MATCH(TABLE-1[@ID],TABLE-2[OLD_IDs],0))), Table1[@ID])
在實踐中,你可以在下面看到這個工作:
您可以潛在地使用 VLOOKUP 使其更容易一些。
我在第一個表中添加了一個新列,該列的公式很簡單
=VLOOKUP([@ID], Table2[#All], 2)
這是解決方案..
參考: https : //www.ablebits.com/office-addins-blog/2014/08/13/excel-index-match-function-vlookup/
=INDEX(Table_2[NewIDs],MATCH(Table_1[@ID],Table_2[Old_ID],0)) 例如:=INDEX($K$2:$K$253,MATCH(B2,$J$2:$J$253,0) ))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.