如何通过匹配列A的值对Excel中的两列进行排序?

时间:2014-06-06 10:08:37

标签: excel vlookup columnsorting

嗨我在excel中有两列数字。 A列的数量多于B列。 我想按列A中匹配的值对列B进行排序 如果在B列中找不到A列中的值,我希望B列显示"MISSING" 我已经按升序对两列进行了排序。

例如。我想要的输出:

A       B  
2001    2001  
2002    2002  
2003    MISSING  
2004    2004  
2005    MISSING  
2006    MISSING  
2007    2007  

请建议我应该使用什么配方。感谢

3 个答案:

答案 0 :(得分:4)

计算col B中col A中值的出现次数。如果该数字为0则丢失。

=IF(COUNTIF(B:B,A1)=0,"Missing",A1)

答案 1 :(得分:2)

如果没有太多不同的项目,您可以添加一个列表(a = number,b =" MISSING"),按A排序,然后删除" MISSING"如果有更多条目具有相同的A

值,则输入

第一部分(插入和顺序)可以在excel中完成,但我认为第二部分(删除"缺少"如果有更多条目)你需要VBA。

更新:根据以下评论

假设你有一个像这样的excel表:

A     B
2001  2001
2001  2003
2002  2005
2003
2004
2004
2005

你想要的东西是:

A     B
2001  2001
2001  2001
2002  Missing
2003  2003
2004  Missing
2004  Missing
2005  2005

您可以使用类似以下算法的内容:

  • 按A
  • 订购整张桌子 C列中的
  • 填充与A中的单元格对应的单元格:

    =IF(ISNA(VLOOKUP(Ax,$B:$B,1,FALSE)), "Missing", Ax)

当然,将x中的Ax替换为单元格的索引。

在C中你将得到你的结果" Missing"条目。

答案 2 :(得分:-2)

此公式应该有效:

=IF(ISNA(VLOOKUP(AA,$B:$B,1,FALSE)), "Missing", AA)

NAME?