从多行多列区域中提取不重复值到一列.doc

从多行多列区域中提取不重复值到一列.doc

ID:55165313

大小:25.00 KB

页数:4页

时间:2020-04-30

从多行多列区域中提取不重复值到一列.doc_第1页
从多行多列区域中提取不重复值到一列.doc_第2页
从多行多列区域中提取不重复值到一列.doc_第3页
从多行多列区域中提取不重复值到一列.doc_第4页
资源描述:

《从多行多列区域中提取不重复值到一列.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、从多行多列区域中提取不重复值到一列  要将一个多行多列区域中不重复的数据提取到一列,即对于重复的数据只提取一次,最直接的做法是先将该区域的数据转到一列中,再利用Excelxx/2016中的删除重复项功能去掉重复值。另外,还可使用数据透视表、数组公式和VBA的方法来提取,本文以Excel2016为例分别介绍如下  假如数据在A1:C11区域,其中还包含一些空单元格,如图所示。方法一:利用数据透视表利于数据透视表的多重合并计算功能,将上述数据区域作为数据透视表的多重合并计算数据区域,把“值”字段放到在数据透视表的行区域中,

2、即可得到不重复值。步骤如下:1.在区域左侧插入空白列。如果原数据区域不是从A列开始,则可跳过此步骤。在本例中,由于原数据区域包含工作表的第一列,需先在该区域的左侧插入一个空白列,作为数据透视表的行字段。2.选择数据区域中的某个单元格,按Alt+D,再按P键,打开“数据透视表和数据透视图向导”,选择“多重合并计算数据区域”项,单击“下一步”。3.再次单击“下一步”,在弹出的对话框中选择并添加数据区域。在选择区域时注意要包含原数据区域的左侧列及标题列。本例为包含上述空白列的A1:D11。单击“下一步”,在弹出的对话框中选择

3、数据透视表存放的位置,单击“完成”按钮。本例将数据透视表放置在当前工作表F3单元格开始的区域中。4.在数据透视表的字段列表中取消选择所有字段,然后再次勾选“值”字段,或将“值”字段拖入到“行”标签区域中,即可在F列得到原区域中的不重复值。方法二:使用数组公式假如数据在A1:C11区域,在E2单元格中输入数组公式:=INDIRECT(TEXT(MIN(IF(($A$2:$C$11”“)*(COUNTIF($E$1:E1,$A$2:$C$11)=0),ROW($2:$11)*100+COLUMN($A:$C),7)),”

4、R0C00”),)&”“公式输入完毕,按Ctrl+Shift+Enter结束。然后拖动填充柄向下填充公式,直到出现空白为止。如果区域中的数据全部为数字和空单元格,还可用下面的数组公式:=LARGE(IF($A$2:$C$11=““,”“,$A$2:$C$11),SUM(COUNTIF($A$2:$C$11,$E$1:E1))+1)方法三:使用VBA下面的VBA代码利用Dictionary对象中的关键字具有唯一性的特点得到不重复值。使用方法是按Alt+F11打开VBA编辑器,在代码窗口中粘贴下列代码并运行,即可在F列可得

5、到A2:C11区域中的不重复值。SubUniquedata()DimrCellAsRange‘创建Dictionary对象Setd=CreateObject(““)‘遍历数据区域的单元格ForEachrCellInRange(“A2:C11”)‘判断单元格是否为空IfrCell““Then‘如果Dictionary对象中不包含指定的关键字就添加该关键字和条目IfNot()Then,EndIfNext‘清除指定列内容Range(“F2:F”&Range(“F2”).End(xlDown).Row).ClearConten

6、ts‘将Dictionary对象中的条目写入指定列Range(“F2”).Resize()=()EndSub

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。