如何让EXCEL表格中两列中的相同数据对齐,另外一列的数据根据被调整后的那一列走?请高手解决问题。

在图1中是 原来的 样式,在图 2 中是 完成后的 样式。A与B列是同一个 阵营的,C.D.E.F列是同一个阵营的。 要求:当B列与C列的内容对齐后,A列的内容要紧跟B列走。是不是可以利用函数什么的方法来做?

使用辅助列可以方便的解决问题:
1、在a列前插入1列(最好同时复制原来的ab列到空表种操作,避免误操作),这样所有的列都依次退后一列(记得这个,避免操作错了);
2、在a2(新插入的空白列!)输入
=match(c2,d:d,0)
3、下拉数据与bc列等行
4、将a列复制粘贴为数值;
5、在a列下方根据d列行数增加 1、2、3...这样的1组序列号;
6、使用数据 删除重复数据 删除a列的重复数据(注意提示的时候仅按照a列选择重复);
7、使用a列数据对abc3列进行排序,排序完成后删除a列即可。
如果嫌步骤多,也可以通过iferror搭配 match和 offset来制作的,方法与上面很相似的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-12-29
1、打开一个excel文件,找到需要自动对齐的两列数据,这里根据需要模拟了两列:

2、用鼠标左键单击选中C1单元格:

3、在C1单元格内输入公式=IF(COUNTIF(B$1:B$156,A1)=0,"",A1)4、输入完公式后回车,再次选中C1单元格:5、把公式下拉填充完A1数据的长度,A1列有多长就填充多长:
C1输入公式
=if(countif(A:A,B1),B1,"")
C1公式向下复制

这时,B列与A列相同名字的,重新排序于C列
第2个回答  2016-12-15
=ISERROR(VLOOKUP(B2,Sheet1!A:B,2,),"")
下拉填充。追问

显示是错误的公式

追答

再试试

=IF(ISERROR(VLOOKUP(B2,Sheet1!A:B,2,)),"",VLOOKUP(B2,Sheet1!A:B,2,))

追问

我不知道这个公式的含义,显然在我的表格中没有正确使用,但还是感谢你的回答,谢谢

追答

你贴上来的两个图片不一样啊,根据提问中的图片,你用第二个公式如果出错,问题应该在工作表名称上。因为图片中没有工作表名称,我在公式中就认定第一个工作表的名称是Sheet1。

追问

这是同一个表格,第一个图是表格的初始样式,希望通过 操作后 变成第二个图的样式。仔细看一下,A.B两列的数据的变化,比如,B列第11行中的数据 为F-5198,当这个编号与C列中的相同编号F-5198对齐时,处于A列中的第11行的格中的4会跟随B列中的F-5198往下移动并与其对应。也就是说A,B两列中的同一行的数据 双双都下移到了图2中的第14行。我还是寄希望于你能来解决令我困惑的难题,感谢!

追答

要达到这种效果,使用公式要借助辅助单元格。
在H2中输入公式
=IF(COUNTIF(B:B,C2),C2,"")
在G2中输入公式
=INDEX(A:A,MATCH(H2,C:C,))
选定G2:H2下拉填充后,复制G:H中从第2行起往下的单元格区域,然后到A2单元格【选择性粘贴——数值——确定】。最后清除G:H中的公式。

也可用VBA代码直接得到这个效果。

本回答被提问者和网友采纳
相似回答