excel中如何删除A列中与B列相同的数据

ywwzcn 2008-01-15 09:06:07
比如A列中有10000个数据,而B列中有400个,而这400个在A列里都可以找到,现在想要删除A列中与B列相同的数据
A:1 5 6 9 8 10 7
B:5 6 9 7
得出的C为
c:1 8 10
请高手帮忙一下!
...全文
3404 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
UltraBejing 2008-05-01
  • 打赏
  • 举报
回复
不会,帮顶
zipall 2008-01-15
  • 打赏
  • 举报
回复
将AB列内容复制到新工作表

选择新表后
在AB列的第一行插入一个相同的字段名,例如 “数据”》单击A列列标选中A列》高级筛选》条件区域选择B列的数据区域(注意不能有空单元格)》确定》alt+;(定位可见单元格)》ctrl+-(删除行)》筛选菜单中选中“全部显示”

这样就在A列得到了去除B列数据的数据,将得到的结果复制到原表C列即可。
z_wenqian 2008-01-15
  • 打赏
  • 举报
回复
只能列出,不能删除,如果能用宏或VBA编程到是能办到,你要用什么方式?
ChinaOBS 2008-01-15
  • 打赏
  • 举报
回复
方法1:手动操作

1、选中C列,输入下面的数组公式:
{=IF(A1:A10000>0,IF(COUNTIF(B1:B400,A1:A10000)=0,A1:A10000,""),"")}
2、复制C列,选中D列,从编辑栏中选取:选择性粘贴----选中 数值
3、对D列排序(升序),即可得到你想要的数据
4、删除C列内容(中间过程没用了)和D列后面显示为#NUM!的单元格


方法2:VBA

暂时略(没必要)
z_wenqian 2008-01-15
  • 打赏
  • 举报
回复
A列为1 5 6 9 8 10 7
B列为5 6 9 7
C列输入数组公式=INDIRECT("A"&LARGE(IF(COUNTIF($B$1:$B$7,$A$1:$A$7)=0,1,0)*ROW($A$1:$A$7),ROW()))
前面三项就是你要的10 8 1
一定是数组公式才管用
若数据多,就将公式中的7改变。
会输公式吗?
ywwzcn 2008-01-15
  • 打赏
  • 举报
回复
在AB列的第一行插入一个相同的字段名,例如 “数据”》单击A列列标选中A列》高级筛选》条件区域选择B列的数据区域(注意不能有空单元格)》确定》alt+;(定位可见单元格)》ctrl+-(删除行)》筛选菜单中选中“全部显示”
能不能再讲的详细点,我照着做了,不过什么都没有
用宏可以吗,我找到了一个代码不过看不懂,运行了也没用
工作表中A列数据是原始数据,而B列是另一些数据,现在要比较两列的情况,然后将A列中包含B列的数据删除
Sub wswx0041()
Dim i&, j&
On Error Resume Next
For j = Range("B65536").End(xlUp).Row To 1 Step -1
For i = Range("A65536").End(xlUp).Row To 1 Step -1
If Cells(i, 1) Like "*" & Cells(j, 2) & "*" And Not IsEmpty(Cells(j, 2)) Then Cells(i, 1).Delete shift:=xlUp
Next i
Next j
End Sub
这个是不是正确的,还有这个要怎么用?

6,216

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office应用
社区管理员
  • Microsoft Office应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧