求教一个关于EXCEL的问题 一个单元格内有10个人名,其中3个重复的,如何删除重复值?
4个回答
展开全部
函数公式实现起来很麻烦,用VB宏代码解决比较方便!!
打开VB编辑器-插入-模块-在弹出的通用窗口中输入VB代码-关闭VB窗口返回到表格界面-在B1单元格输入=yy(A1)后下拉填充公式,即可删除A列中的重复值。
代码如下:
Function yy(rng As Range) As String
Dim y$, k$, m$, i%, j%
s = Split(rng, " ")
For i = 0 To UBound(s)
For j = i + 1 To UBound(s)
If InStr(s(i), s(j)) > 0 Then
k = k & j
ElseIf InStr(s(j), s(i)) > 0 Then
m = m & i
End If
Next j
Next i
For i = 0 To UBound(s)
If InStr(m & k, i) > 0 Then
GoTo nexti
Else
y = y & " " & s(i)
End If
nexti:
yy = y
Next i
End Function
打开VB编辑器-插入-模块-在弹出的通用窗口中输入VB代码-关闭VB窗口返回到表格界面-在B1单元格输入=yy(A1)后下拉填充公式,即可删除A列中的重复值。
代码如下:
Function yy(rng As Range) As String
Dim y$, k$, m$, i%, j%
s = Split(rng, " ")
For i = 0 To UBound(s)
For j = i + 1 To UBound(s)
If InStr(s(i), s(j)) > 0 Then
k = k & j
ElseIf InStr(s(j), s(i)) > 0 Then
m = m & i
End If
Next j
Next i
For i = 0 To UBound(s)
If InStr(m & k, i) > 0 Then
GoTo nexti
Else
y = y & " " & s(i)
End If
nexti:
yy = y
Next i
End Function
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用excel的删除重复项的方式处理。
方法如下。(不用宏命令)
1、选中单元格所在的列,如果有其他的数据,可复制这一列到新建的表格里。例如现在复制大sheet2 的A列
2、分列,按空格分列。选中A列,在数据菜单中找到分列,选按符号,下一步,选空格(如人名之前是其他符号,就选其他,在输入框输入符号),下一步,完成。
3,、转置数据。复制刚分出来的所有内容,在空白处右键,选择性粘贴,找到右下角的转置。确定。
4、选中A列,在数据中找到删除重复项,选择以当前选定区域(也可通过键盘C选择),确定。同样,对所有列都这样处理。
5、再次转置数据。
6、选中所有数据,复制,打开计事本,或者Word,替换tab符号为空格,
7、复制处理后的数据,粘贴到原来的表格里。
过程有点繁杂,但是操作并不复杂。
方法如下。(不用宏命令)
1、选中单元格所在的列,如果有其他的数据,可复制这一列到新建的表格里。例如现在复制大sheet2 的A列
2、分列,按空格分列。选中A列,在数据菜单中找到分列,选按符号,下一步,选空格(如人名之前是其他符号,就选其他,在输入框输入符号),下一步,完成。
3,、转置数据。复制刚分出来的所有内容,在空白处右键,选择性粘贴,找到右下角的转置。确定。
4、选中A列,在数据中找到删除重复项,选择以当前选定区域(也可通过键盘C选择),确定。同样,对所有列都这样处理。
5、再次转置数据。
6、选中所有数据,复制,打开计事本,或者Word,替换tab符号为空格,
7、复制处理后的数据,粘贴到原来的表格里。
过程有点繁杂,但是操作并不复杂。
追问
想用函数来处理
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
更多回答(2)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询