求助一个 excel 排序问题,折腾了半天无果,心累。。

2019-01-31 17:26:16 +08:00
 VKMEPR

本以为简单问题,按网上教程尝试了半天没解决。求助 V 站大佬解答给个排序公式,先感谢了!

上图是希望达到的排序效果,将两列相同数据显示在同一行,让 B 列相同数据根据 A 列位置显示。

2021 次点击
所在节点    问与答
18 条回复
rrfeng
2019-01-31 17:32:19 +08:00
这不是排序问题,看下 vlookup 相关的
xmlf
2019-01-31 17:35:37 +08:00
=rows
Orenoid
2019-01-31 17:35:38 +08:00
不会 excel,我选择用代码提出来处理完再写回去。。
VKMEPR
2019-01-31 17:37:24 +08:00
@rrfeng VLOOKUO 函数可以找出两列相同数据,但实现不了相同数据并行排列(也可能是我不知道方法,如有方法请赐教)
35korea
2019-01-31 17:38:16 +08:00
我的思路是 5692 放 c 用 vlookup 在 c 表有就显示,不然不显示,当然 ab 用一样数据
nightlight
2019-01-31 17:39:39 +08:00
A 列添加辅助列,数据为行号; C 列用 vlookup/index+match 去匹配 B 列数据在 A 列的行号,最后排个序就行。
VKMEPR
2019-01-31 17:40:23 +08:00
@xmlf 可以麻烦给个计算公式吗?对 excel 公式使用没什么了解。
andylsr
2019-01-31 17:42:44 +08:00
vlookup 分明是可以的~~你在 c 列写公式~在 b 列中查找 a 单元格的值~秒秒钟写出来~~
geelaw
2019-01-31 17:42:49 +08:00
你想要破坏性(原地)的还是非破坏性的?

如果你希望 A 列有全的数据,B 列有部分、未对齐的数据,C 列有 B 列中和 A 列对齐的数据,那么你可以设置 C1 的公式为

=IF(COUNTIF($B$1:$B$9,"="&$A1)<>0,$A1,"")

然后填充 C1 到 C10。

如果你希望是原地的,也就是改变 B 列的内容,则你可以如上在 C 列的到结果,然后复制 C 列,粘贴值到 B 列,然后取消复制再删除 C 列。
geelaw
2019-01-31 17:43:49 +08:00
@geelaw #9 *在 C 列得到结果
karjarjam
2019-01-31 17:44:39 +08:00
=row()
wsh1108
2019-01-31 17:46:12 +08:00
@andylsr 你确定?:doge
aoobo
2019-01-31 17:46:27 +08:00
=IFERROR(VLOOKUP(A3,工作表 1!B:C,1,0),"")
aoobo
2019-01-31 17:48:41 +08:00
上面的公式,在 C 列拉,改一下 A3 和工作表 1。
alex321
2019-01-31 17:53:32 +08:00
增加一个 C 列,使用公式 =IF(COUNTIF(B:B,A1),A1,"")。
https://i.loli.net/2019/01/31/5c52c5940d302.png
aoobo
2019-01-31 18:05:49 +08:00
watzds
2019-01-31 18:30:21 +08:00
这哪是排序啊哈哈,难怪找不到
VKMEPR
2019-01-31 20:42:33 +08:00
@alex321
@aoobo
@geelaw

感谢诸位热心解答!完美解决。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/532230

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX