2017-06-19 162 views
0

我在excel中有以下列,我想根据匹配ID将ID列更改为新ID,例如在ID列中第一个数据是Zrecruit_376840000000415007,即Zrecruit_376840000000415007 = 5789比赛ID和新的ID列的ID应及时更换,5789.基于Excel中的另一列填充值

ID        Match ID       New ID 
Zrecruit_376840000000415007  Zrecruit_376840000000367020 = 5782 
Zrecruit_376840000000215296  Zrecruit_376840000000375036 = 5783 
Zrecruit_376840000000217195  Zrecruit_376840000000389001 = 5784 
Zrecruit_376840000000218111  Zrecruit_376840000000369168 = 5785 
Zrecruit_376840000000219665  Zrecruit_376840000000392001 = 5786 
Zrecruit_376840000000222030  Zrecruit_376840000000410013 = 5787 
Zrecruit_376840000000226008  Zrecruit_376840000000432013 = 5788 
Zrecruit_376840000000227079  Zrecruit_376840000000415007 = 5789 

I have applied the formula as attached in the image but im getting N/A

回答

1

试试这个

=REPLACE(VLOOKUP(A2 & "*",$B$2:$B$9,1,0),1,FIND("=",VLOOKUP(A2 & "*",$B$2:$B$9,1,0),1)+3,"")这里“+3 “表示”=“之后的三个空格。改变这种按您的要求

ID = Column A Matched ID = Column B New ID = Column C

粘贴此公式在列C

enter image description here

+0

如果在B列中找不到A2,则会发出#N/A错误。将该公式附加到所有行并查看。您也可以通过'CTRL + H'手动查找A2值 – Maddy

0

你可以写一个公式来找到匹配的行数,并得到其相应的单元格值,类似于下面的东西

=INDIRECT(ADDRESS(MATCH(A2,B2:B9,0),3))

此公式:

  • 查找范围B2 A2中的匹配的文本:B9
  • 获取的地址与列行作为3(或列C)
  • 获取的值使用INDIRECT()函数的地址

这将使你在新列中的值,那么你可以复制粘贴,你想,

或者,您也可以在VBA脚本中编写类似的函数以直接替换值