怎么用宏来求出Excel2013中不重复人名
2017-03-18
Excel2013中有很多可以处理重复值,其中用宏来的最快,代价当然也是最复杂的了。鉴于很多人都不懂代码,小编就向大家提供代码,用于求出表格中不重复的人名。
用宏来求出Excel2013中不重复人名的步骤:
①打开Excel2013,在A列中输入人名,如下图所示。

②然后按下快捷键ALT+F11键,调出代码编辑器,新建模块。

③将下列代码复制进去:

Dim i&, Myr&, Arr
Dim d, k, t, Sht As Worksheet
Set d = CreateObject("Scripting.Dictionary")
For Each Sht In Sheets
If Sht.Name <> "Sheet4" Then
Myr = Sht.[a65536].End(xlUp).Row
Arr = Sht.Range("a2:a" & Myr)
For i = 1 To UBound(Arr)
d(Arr(i, 1)) = ""
Next
End If
Next
k = d.keys
Sheet4.[a3].Resize(d.Count, 1) = Application.Transpose(k)
Set d = Nothing
④然后为宏命名,创建,下次使用的时候直接打开宏,按F5执行即可。

⑤有必要说明一下,Sheet4.[a3] .Resize(d.Count, 1) = Application.Transpose(k) :把字典d中所有的关键字赋给表4以a3单元格开始的单元格区域中。