如果我有一个带有值的列,并且我想找出其中有哪些不同的值(不是多少 - 而是实际的不同值),我该怎么做?
在 SQL Server 中,我会做类似的事情
SELECT Distinct(MyColumn) FROM MyTable
Run Code Online (Sandbox Code Playgroud)
A D*_*arf 339
比你想象的更简单:

Nat*_*itt 136
Excel 2007 和 2010:
使用数据标题Remove Duplicates下的菜单选项。
Excel 2003:
简单的方法:
艰辛的道路:
使用以下代码编写宏:
'Remove duplicates from sorted list
Sub getDistinct()
Do While ActiveCell.Value <> ""
If ActiveCell.Value = ActiveCell.Offset(1, 0).Value Then
ActiveCell.Select
Selection.Delete Shift:=xlUp
Else
ActiveCell.Offset(1, 0).Activate
End If
Loop
End Sub
Run Code Online (Sandbox Code Playgroud)
这为您提供了独特的列表。您可能希望先将列表复制到另一个工作表。
小智 26
或者(一种简单粗暴的方式):
在 B1,
=IF(COUNTIF(A$1:A1,A1)=1,A1,"")
Run Code Online (Sandbox Code Playgroud)
并抄下来。它只是复制每个值的第一次出现(在它出现的行中)。
And*_*ohr 25
我使用两种主要方法来获取不同的值 - 第一种是Nathan DeWitt 建议的宝贵Remove Duplicates工具。
缺点Remove Duplicates是您会丢失数据。尽管Ctrl+z很强大,但出于各种原因,您可能不希望这样做 - 例如,您当前可能选择了过滤器,这使得删除重复项以获得不同的值列表变得非常混乱。
上面没有提到的另一种方法是使用数据透视表。
假设这是您的表,并且您想要获得不同的平台列表。

插入Pivot Table带有表格的 a 作为您的数据源。
现在选择Platform(s)列作为您的Row Labels.
瞧!不同值的列表。

如果您想整理一下,您可以关闭Field Headers并设置Grand Totals为Off for Rows and Columns。
小智 6
或者您可以在宏中包含过滤器选项
Columns("A:A").AdvancedFilter Action:=xlFilterInPlace, Unique:=True
Run Code Online (Sandbox Code Playgroud)
对我来说,最简单的排序方法是使用“过滤器”选项。
第一步是使用条件格式 -> 突出显示单元格规则 -> 重复值查找重复值。
然后单击具有重复项的列上的箭头(在本例中为“平台”)-> 按颜色过滤(单元格颜色或字体颜色)。