这里有很多解决方案非常接近,但我能找到的所有解决方案都有一个独特的列表,可以预先设定位置。
示例数据
动物
狗
狗
猫
鸭
鹅
鸭
猫
鸭子
我希望能够使用标准Ctrl + C获取此列表(包括列标题),转到另一个位置,运行宏并将其粘贴到所需范围内的唯一列表,以便我得到:
动物
狗
猫
鸭
鹅
尝试使用宏录制器并解析相关部分但没有骰子,并且代码生成特定于单元格的引用,我太过于讨论如何替换。我希望它能够动态工作,无论任何工作表中的位置如何,例如“粘贴唯一”命令,我已经选择了一些东西。
为了进一步澄清,如果我可以将已经不重复的列表粘贴到当前位置,那将会很棒。基本的想法是从400行数据中获取一列,将其值的唯一列表粘贴到另一个位置,然后能够使用该列表开始创建汇总表(计数,总和等)。
我也在使用Excel 2010。
在下面添加宏录制代码:
Sub Macro6()
' Macro6 Macro
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Range("A2").Select
Selection.End(xlDown).Select
Range("A438").Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveSheet.Range("$A$438:$A$866").RemoveDuplicates Columns:=1, Header:= _
xlYes
End Sub
答案 0 :(得分:1)
这是一个VBA例程。
将例程放在标准代码模块中。
Sub Crazy()
With Selection.CurrentRegion
If .Count > 1 Then
.RemoveDuplicates 1
End If
End With
End Sub
现在...
复制您的动物列表并将其粘贴到您喜欢的任何位置。
选择列表中的至少一个单元格。
从宏对话框(Control-F8)运行Crazy过程。
就是这样。
答案 1 :(得分:0)
我希望能够使用a获取此列表(包括列标题) 标准Ctrl + C,转到另一个位置,运行宏并拥有它 将唯一列表粘贴到所需范围
我想这个特殊的粘贴宏应该做你想要的,假设数据在一列上:
Sub PasteAndRemoveDuplicates()
Selection.Parent.Paste
Selection.RemoveDuplicates 1
End Sub