Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2226|回复: 4

[已解决]提取不重复姓名

[复制链接]
发表于 2016-1-21 20:29 | 显示全部楼层 |阅读模式
本帖最后由 武林长风 于 2016-1-21 21:03 编辑

新建文件夹.rar (2.84 KB, 下载次数: 4)
发表于 2016-1-21 20:36 | 显示全部楼层
回复

使用道具 举报

发表于 2016-1-21 20:55 | 显示全部楼层    本楼为最佳答案   
=INDEX(姓名!A:A,SMALL(IF((MATCH(姓名!$A$1:$A$178,姓名!$A$1:$A$178,)=ROW($A$1:$A$178))*(姓名!$A$1:$A$178<>0),ROW($A$1:$A$178),65536),ROW(A1:A1)))&""

新建文件夹.rar

11.12 KB, 下载次数: 6

点评

数组公式。谢谢!  发表于 2016-1-21 21:00
回复

使用道具 举报

发表于 2016-1-22 09:24 | 显示全部楼层
  1. Sub 提取不重复姓名()
  2. Dim arr, i&, d, x
  3. arr = Sheets(1).[a1].CurrentRegion
  4. Set d = CreateObject("scripting.dictionary")
  5. For i = 1 To UBound(arr)
  6.     x = arr(i, 1)
  7.     If Len(x) > 1 Then
  8.         d(x) = ""
  9.     End If
  10. Next
  11. With Sheets(2)
  12.     .[b9:b10000].ClearContents
  13.     .[b9].Resize(d.Count, 1) = Application.Transpose(d.keys)
  14. End With
  15. End Sub
复制代码

Book1.rar

11.95 KB, 下载次数: 4

评分

参与人数 2 +9 学分 +2 收起 理由
wpeidong51 + 2 我和小伙伴都惊呆了
武林长风 + 9 赞一个

查看全部评分

回复

使用道具 举报

发表于 2016-1-22 11:44 | 显示全部楼层
学习学习
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-3-28 19:19 , Processed in 0.368299 second(s), 18 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表