忽略重复和在Excel中创建唯一值的新的列表(Ignore Duplicates and Creat

2019-06-21 01:31发布

我有一个经常出现重复值的列。 我需要创建一个新的基于列的第一列的唯一值,如下所示:

Column A   Column B  
a          a
a          b
b          c
c
c

这列B实际上需要出现在不同的表中,同一工作簿内,所以我认为它需要与工作sheet2!A1样式格式。

我已经没有任何运气与数据/筛选菜单选项,因为这似乎只在命令工作。 我需要B列自动更新每当进入到A列的新值

Answer 1:

Totero的答案是正确的。 链接也非常有帮助。

基本上你需要的公式为:

B2=INDEX($A$2:$A$20, MATCH(0, COUNTIF($B$1:B1, $A$2:$A$20), 0))

然后按下Ctrl + Shift + 输入 (或它不会使用阵列式工作)。

两个重要的事情要记住这里:完整列表是在细胞A2:A20 ,那么这个公式在单元格要粘贴B2 (不B1的,会给你循环引用)。 其次,这是一个数组公式,所以你需要按下Ctrl + Shift + 回车 ,否则将无法正常工作。



Answer 2:

还有就是如何做到这一点很好的指导这里 。

基本上类似的东西来:

=INDEX(Sheet1!$A$1:$A$20, MATCH(0, COUNTIF($B$1:B1,Sheet!$A$1:$A$20), 0))


Answer 3:

在我的情况了Excel使用的公式时冻结

B2 = INDEX($ A $ 2:$ A $ 20 MATCH(0,COUNTIF($ B $ 1:B1,$ A $ 2:$ A $ 20),0))

因为有许多行(10000)。 所以,我没有以另一种方式,我在下面展示。

我抄我的原始列表第二个塔,然后用Excel的功能“删除重复项”我能找到的唯一值的列表。

从Microsoft Office网站复制:

 Select all the rows, including the column headers, in the list 

要过滤。

点击范围的左上角单元格,然后拖动到右下角单元格。

 On the Data menu, point to Filter, and then click Advanced Filter. In the Advanced Filter dialog box, click Filter the list, in place. Select the Unique records only check box, and then click OK. 

显示过滤列表和重复行被隐藏。

 On the Edit menu, click Office Clipboard. 

显示剪贴板任务窗格。

 Make sure the filtered list is still selected, and then click Copy Copy button. 

过滤列表被高亮显示与边界轮廓和选择显示为在剪贴板中的顶部的>>项。

 On the Data menu, point to Filter, and then click Show All. 

重新显示原始列表。

 Press the DELETE key. 

原来的列表被删除。

 In the Clipboard, click on the filtered list item. 

过滤列表会出现在相同的位置原始列表。

来源:Microsoft Office网站(链接删除,原因死亡)



Answer 4:

在一个排序列 ,你也可以尝试这样的想法:

B2=A2
B3=IFERROR(INDEX(A:A,MATCH(B2,A:A,1)+1),"")

B3可以粘贴下来。 这将导致0,最后一个独特的比赛后。 如果这是不必要的,把一些IF语句周围排除这一点。

编辑:

比IF语句更容易,至少对文本值:

B3=IFERROR(T(INDEX(A:A,MATCH(B2,A:A,1)+1)),"")


Answer 5:

从柱中移除重复

  1. 排序列A A-值>ž
  2. 选择B列
  3. 同时仍然被选择的列B,在式输入框中,输入

     =IF(TRIM(A1)=TRIM(A2),"",TRIM(A1)) 
  4. 虽然B列仍处于选中状态,选择编辑 - >填充 - >下(在新版本中,只需选择B1单元格,并拉下外包装箱扩大一路列下)

注意 :如果列B是另一个页面上,你可以做的工作表Sheet1 A1和A2工作表Sheet1!。



Answer 6:

在用于包含列表中的片材的工作表模块:

Private Sub Worksheet_Change(ByVal Target As Range)

    Dim rngDest As Range

    If Not Intersect(Target, Me.Columns(1)) Is Nothing Then

        Set rngDest = ThisWorkbook.Sheets("Sheet2").Range("A1")

        Me.Range(Me.Range("A2"), Me.Cells(Rows.Count, 1).End(xlUp)).AdvancedFilter _
            Action:=xlFilterCopy, CopyToRange:=rngDest, Unique:=True

    End If

End Sub


Answer 7:

我在范围A2颜色名称的列表:A8,在列BI要提取的颜色名称的不同列表。

按照下面的步骤:

  • 选择单元格B2; 写公式从列表中获取唯一的值。
  • =IF(COUNTIF(A$2:A2,A2)=1,A2,””)
  • 按键盘上的回车键
  • 该函数将返回第一个颜色的名称。
  • 为细胞的其余部分返回值,复制相同的公式了。 通过按下键CTRL + V B8:在范围B3复制式:B8,按键CTRL + C键盘上复制在单元格B2配方和粘贴到区域B3。
  • 在这里你可以看到,我们有颜色名称的唯一列表输出。


Answer 8:

因此,对于这个任务,首先从您的数据排序,以Z或Z到A,那么你可以只用一个简单的公式表示如下:

=IF(A2=A3, "Duplicate", "Not Duplicate")

上述式规定,如果列A2数据(A是列和2是行号)类似于A3(A是柱和3是行号),则它将打印重复否则将打印不重复。

让我们考虑一个例子,柱A由电子邮件地址,其中一些重复的,所以在第2列中,我使用上述公式,在结果中显示我的2个重复单元之一是第2行和第6行。

一,你得到只是把过滤器对您的工作表复制数据,并仅可见重复数据并删除所有不必要的数据。



Answer 9:

老实说,我跟着这些例子的嘴脸,他们根本没有工作。 我结束了无谓挣扎着试图让Excel的工作是把刚才复制我的专栏到记事本+ +我在哪里能找到分钟内简单的解决方案的全部内容后做什么。 看看这个: 在记事本中删除重复的行++

编辑:这里是如何做到这一点的TextFX的简要概述:

插件 - >插件管理器 - >显示插件管理器 - >可用选项卡 - > TextFX - >安装

安装在记事本后TextFX ++,然后选择你想从删除重复的所有文字,然后请务必检查:TextFX - > TextFX工具 - >排序仅输出唯一的行

然后单击“排序线区分大小写”或“之类的行不区分大小写”,它会进行独特排序。



Answer 10:

发现这里上面的公式有错误控制时提到

=IFERROR(INDEX($B$2:$B$9, MATCH(0,COUNTIF($D$1:D1, $B$2:$B$9), 0)),"") 

其中:(B2:B9是要提取的唯一值的列的数据,D1是你式位于上述单元)



Answer 11:

所有你需要做的是:进入数据选项卡中排序和筛选之所以选择提前在行动中进行选择:复制到另一个位置,如果想有一个新的列表 - 复制到任何位置。在列表范围内选择你想要得到的记录从列表中删除。 而最重要的是要检查:不重复的记录。



Answer 12:

=SORT(UNIQUE(A:A))

如果你想在一列中列出的唯一值上述公式效果最好。



Answer 13:

现代的做法是考虑在哪里来的信息栏从Web服务,如OData的来源情况。 如果你需要生成一个过滤器中选择关闭领域已复制值列海量数据,需要考虑下面的代码:

var CatalogURL = getweb(currenturl)
                 +"/_api/web/lists/getbytitle('Site%20Inventory%20and%20Assets')/items?$select=Expense_x0020_Type&$orderby=Expense_x0020_Type";

/* the column that is replicated, is ordered by <column_name> */

    OData.read(CatalogURL,
        function(data,request){

            var myhtml ="";
            var myValue ="";

            for(var i = 0; i < data.results.length; i++)
            {
                myValue = data.results[i].Expense_x0020_Type;

                if(i == 0)
                {
                        myhtml += "<option value='"+myValue+"'>"+myValue+"</option>";
                }
                else
                if(myValue != data.results[i-1].Expense_x0020_Type)
                {
                        myhtml += "<option value='"+myValue+"'>"+myValue+"</option>";

                }
                else
                {

                }


            }

            $("#mySelect1").append(myhtml);

        });


文章来源: Ignore Duplicates and Create New List of Unique Values in Excel