搜档网
当前位置:搜档网 › Ecel提取重复值不重复值全部值的函数

Ecel提取重复值不重复值全部值的函数

Ecel提取重复值不重复值全部值的函数
Ecel提取重复值不重复值全部值的函数

E c e l提取重复值不重复

值全部值的函数

文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]

Excel提取重复值、不重复值、全部值的函数1、从某行中提取

定义名称“数量1”:=COUNTA(Sheet2!$B$6:$IV$6)

“区域1”:=OFFSET(Sheet2!$B$6,0,0,1,数量1)

除定义的名称外,以下(1)至(3)中的公式均为数组公式。

(1)提取有重复的数据

【思路】把区域中重复数据的第1个提取出来。

为避免拖动公式超出区域范围时出现的错误,前面加了一个IF函数判断是否超出区域范围。

{=IF(COLUMN(A1)>数量1,"",INDEX(6:6,SMALL(IF((COUNTIF(区域1,区域

1)>1)*(MATCH(区域1,区域1,0)=COLUMN(区域1)-1),COLUMN(区域

1),256),COLUMN(A1))) & "")}

(2)提取没有重复的数据

{=IF(COLUMN(A1)>数量1,"",INDEX(6:6,SMALL(IF(COUNTIF(区域1,区域

1)=1,COLUMN(区域1),256),COLUMN(A1))) & "")}

(3)提取全部数据,重复的只提取一次

{=IF(COLUMN(A1)>数量1,"",INDEX(6:6,SMALL(IF(MATCH(区域1,区域

1,0)=COLUMN(区域1)-1,COLUMN(区域1),256),COLUMN(A1))) & "")}

2、从某列中提取

定义名称“数量2”:=COUNTA(Sheet3!$B$7:$B$65536)

“区域2”:=OFFSET(Sheet3!$B$7,0,0,数量2)

(1)提取有重复的数据

{=IF(ROW(A1)>数量2,"",INDEX(B:B,SMALL(IF((COUNTIF(区域2,区域

2)>1)*(MATCH(区域2,区域2,0)=ROW(区域2)-6),ROW(区域2),65536),ROW(A1))) & "")}

(2)提取没有重复的数据

{=IF(ROW(A1)>数量2,"",INDEX(B:B,SMALL(IF(COUNTIF(区域2,区域2)=1,ROW(区域2),65536),ROW(A1))) & "")}

(3)提取全部数据,重复的只提取一次

{=IF(ROW(A1)>数量2,"",INDEX(B:B,SMALL(IF(MATCH(区域2,区域2,0)=ROW(区域2)-6,ROW(区域2),65536),ROW(A1))) & "")}

C++函数模板详解

C++函数模板详解 经常有碰到函数模块的应用,很多书上也只是略有小讲一下,今天又狂碰到函数模块,无奈特地找来C++编程经典<>翻阅一遍,终于有所全面了解..... C++函数模块基础知识: 一. 问题: 强类型语言要求我们为所有希望比较的类型都实现一个实例 int min( int a, int b ) { return a < b ? a : b; } double min( double a, double b ) { return a < b ? a : b; } 有一种方法可替代为每个min()实例都显式定义一个函数的方法这种方法很有吸引力但是也很危险.那就是用预处理器的宏扩展设施例如 :#define min(a,b) ((a) < (b) ? (a) : (b)) 在复杂调用的情况下,它的行为是不可预期的,这是因为它的两个参数值都被计算两次.一次是在a 和b 的测试中另一次是在宏的返回值被计算期间. #include #define min(a,b) ((a) < (b) ? (a) : (b)) const int size = 10; int ia[size]; int main() { int elem_cnt = 0; int *p = &ia[0]; // 计数数组元素的个数 while ( min(p++,&ia[size]) != &ia[size] ) ++elem_cnt; cout << "elem_cnt : " << elem_cnt << "\texpecting: " << size << endl; return 0; } 执行该程序的结果是下面不正确的计算结果: elem_cnt : 5 expecting: 10

Excel统计区域中不同名称的种类数量

以下直接引用百度知道里面的方法 Excel中如何统计区域中不同名称的种类数量?2008-11-25 16:01 提问者:liaoyf729 | 浏览次数:2974次 假设表中: A列B列 a ?种 a b b d 23 现要在B单元格中统计A列中不同内容的数量,此例中B1值应为:4 要如何统计?且A 列的数据常变动 参考资料:提交回答取消 2008-11-25 17:03 满意回答只能用数据透视表来做,具体步骤如下: 1.选择C1单元格->点击菜单中的“数据”->选择“数据透视表和数据透视图” 2.选择“下一步”->选择A列然后敲回车->选择“完成” 3.如果以上步骤没错误会弹出一个小窗口“数据透视表字段列表”,在小窗口中会有一个小图标,图标右侧的名字和A1单元格的内容一致,拖动这个图标到下面图表中写有“将行字段拖致此处”的区域,字是竖排的,灰色的,很好辨认。 4.拖动后,在C4单元格上处会出现一个下拉式菜单。这就表明前面步骤正确。 5.在B1单元格中输入=COUNTA(C:C)-2,此时B1单元格中就是A列中不同内容的统计数量了。 特点是:A列不用排序、允许有空行、具体内容无限制(也可以是数字) 需要注意的是: 1.A1单元格内容是不可以改变的,你就拿A1当表头吧。 2.A列内容有变化后,右键点击C4单元格,选择“刷新数据”即可重新计算 3.如果A列中有了0值(零),而0值不参与统计,那把B1中的公式改动成: =COUNTA(C:C)-3即可赞同5| 评论(1) 2008-11-25 16:16 ngjtyw | 九级 如果能按A列排序就行: C1=1 C2=if(A2=A1,0,1) 向下复制。 B1=sum(C:C)&"种" 赞同0| 评论 2008-11-25 16:21 方括号| 十五级 =SUM(IF(ISNUMBER(1/COUNTIF(A1:A100,A1:A100)),1/COUNTIF(A1:A100,A1:A100))) 数组公式,按Ctrl+Shift+Enter结束公式输入。赞同0| 评论2008-11-25 17:02

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

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

把“值”字段放到在数据透视表的行区域中,即可得到不重复值。步骤如下: 1.在区域左侧插入空白列。如果原数据区域不是从A列开始,则可跳过此步骤。在本例中,由于原数据区域包含工作表的第一列(A列),需先在该区域的左侧插入一个空白列,作为数据透视表的行字段。 2.选择数据区域中的某个单元格,按Alt+D,再按P键,打开“数据透视表和数据透视图向导”,选择“多重合并计算数据区域”项,单击“下一步”。

3.再次单击“下一步”,在弹出的对话框中选择并添加数据区域。在选择区域时注意要包含原数据区域的左侧列及标题列。本例为包含上述空白列的A1:D11。

单击“下一步”,在弹出的对话框中选择数据透视表存放的位置,单击“完成”按钮。本例将数据透视表放置在当前工作表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)*10 0+COLUMN($A:$C),7^8)),"R0C00"),)&"" 公式输入完毕,按Ctrl+Shift+Enter结束。然后拖动填充柄向下填充公式,直到出现空白为止。

Excel提取重复值、不重复值、全部值的函数

Excel提取重复值、不重复值、全部值的函数 1、从某行中提取 定义名称“数量1”:=COUNTA(Sheet2!$B$6:$IV$6) “区域1”:=OFFSET(Sheet2!$B$6,0,0,1,数量1) 除定义的名称外,以下(1)至(3)中的公式均为数组公式。 (1)提取有重复的数据 【思路】把区域中重复数据的第1个提取出来。 为避免拖动公式超出区域范围时出现的错误,前面加了一个IF函数判断是否超出区域范围。 {=IF(COLUMN(A1)>数量1,"",INDEX(6:6,SMALL(IF((COUNTIF(区域1,区域1)>1)*(MATCH(区域1,区域1,0)=COLUMN(区域1)-1),COLUMN(区域 1),256),COLUMN(A1))) & "")}

(2)提取没有重复的数据 {=IF(COLUMN(A1)>数量1,"",INDEX(6:6,SMALL(IF(COUNTIF(区域1,区域1)=1,COLUMN(区域1),256),COLUMN(A1))) & "")} (3)提取全部数据,重复的只提取一次 {=IF(COLUMN(A1)>数量1,"",INDEX(6:6,SMALL(IF(MATCH(区域1,区域1,0)=COLUMN(区域1)-1,COLUMN(区域1),256),COLUMN(A1))) & "")} 2、从某列中提取 定义名称“数量2”:=COUNTA(Sheet3!$B$7:$B$65536) “区域2”:=OFFSET(Sheet3!$B$7,0,0,数量2) (1)提取有重复的数据

{=IF(ROW(A1)>数量2,"",INDEX(B:B,SMALL(IF((COUNTIF(区域2,区域2)>1)*(MATCH(区域2,区域2,0)=ROW(区域2)-6),ROW(区域 2),65536),ROW(A1))) & "")} (2)提取没有重复的数据 {=IF(ROW(A1)>数量2,"",INDEX(B:B,SMALL(IF(COUNTIF(区域2,区域2)=1,ROW(区域2),65536),ROW(A1))) & "")} (3)提取全部数据,重复的只提取一次 {=IF(ROW(A1)>数量2,"",INDEX(B:B,SMALL(IF(MATCH(区域2,区域2,0)=ROW(区域2)-6,ROW(区域2),65536),ROW(A1))) & "")}

Excel中统计不重复人数

Excel中统计不重复人数 以重修补考数据表为例,要统计B2:B12区域中不重复姓名的个数(如图1),可有以下两种方法。 图 1 解决方法1: =SUM(1/COUNTIF(B2:B12,B2:B12)) 然后按下Ctrl+Shift+Enter三个键就可在选中的单元格中看到结果。 Ctrl+Shift+Enter为数组公式输入确认键。 原理阐述: 1.COUNTIF(B2:B12,B2:B12)是数组计算,运算过程相当于: COUNTIF(B2:B12,B2) COUNTIF(B2:B12,B3) …… COUNTIF(B2:B12,B12) 运算结果:=SUM(1/{1;3;2;2;1;1;2;1;3;3;2}),是一个数组,表示区域中等于本单元格数据的个数。 2.用1除以个数 把上一步的结果整理一下,用分数代替小数: =SUM({1;1/3;1/2;1/2;1;1;1/2;1;1/3;1/3;1/2}) 区域中有三个重复的数据“孟保军”,那么这一步就有三个1/3,有两个“屈兵飞”和两个“陈润”,那么这一步的结果就有四个1/2。以此类推,如果有5个重复的数,那么这一步的结果就有5个1/5。 3.Sum()进行的是加法运算,3个1/3相加,结果为1,2个1/2相加,结果也是1。如果区域中有8个重复的数,那么一定会有8个1/8相加,结果也是1。 重复的数经过三步运算,到最后结果都是1。

把所有结果加起来,就是区域中不重复的个数(如图2)。 图 2 解决方法2: =SUMPRODUCT(1/COUNTIF(B2:B12,B2:B12)) 直接按Enter键即可出结果(如图3)。原理类似方法1,只是采用的函数不同 图 3

在C语言中实现模板函数的方法

各种用C 语言实现的模板可能在使用形式上有所不同。现以一个求和函数Sum 为例,用C++ Template 可写如下: template R Sum(const T *array, int n) { R sum = 0; for (int i = 0 ; i < n ; ++i) sum += i; return sum; } 如果不是内置类型,该模板隐式地需要有R R::operator+=(T)运算符可用。 1. 使用函数指针作为Functor 替换者 Typedef struct tagAddClass { Void (*add)(char* r1, const char* r2); Int elemSize; Char sum[MAX_ELEM_SIZE]; } AddClass; void Sum(AddClass* self, const char* array, int n) { for (int i = 0 ; i < n ; ++i) self->add(self->sum, array + i*self->elemSize); } 使用时:

….. V oid AddInt(char* r1, const char* r2) { *(long*)r1 += *(int*)r2; } AddClass addClass = {AddInt, 2, 0 }; Int array[100]; Read(array); Sum(&addClass, array, 100); ….. 2. 用宏作为Functor的替换者 #define GenSumFun(SumFunName, Add, RetType, ElemType) \ RetType SumFunName (const ElemType *array, int n) \ { \ RetType sum = 0; \ for (int i = 0 ; i < n ; ++i) \ Add(sum, i); \ return sum; \ } 使用时: #define AddInt(x, y) ((x) += (y))

Excel使用筛选计算唯一值的个数

EXCEL中如何使用筛选计算唯一值的个数 可以使用“高级筛选”对话框从数据列中提取唯一值,并将其粘贴到新的位置。然后可以使用 ROWS 函数计算此新区域中项的个数。 1.选择单元格区域,或确保活动单元格在一个表中。 请确保单元格区域包含列标题。 2.在“数据”选项卡上的“排序和筛选”组中,单击“高级”。 显示“高级筛选”对话框。 3.单击“将筛选结果复制到其他位置”。 4.在“复制到”框中,输入单元格引用。 也可以单击“压缩对话框” 以临时隐藏对话框,在工作表上选择单元格以后,再按“展开对话框” 。

5.选中“选择不重复的记录”复选框,然后单击“确定”。 所选区域中的唯一值将复制到新位置,此位置以在“复制到”框中指定的单元格为开头。 6.在该区域最后一个单元格下面的空白单元格中,输入 ROWS 函数。使用刚才复制的唯一值区域(不包括列标题)作为参数。例如,如果唯一值的区域为 B2:B45,那么可以输入: =ROWS(B2:B45) 返回页首 使用函数计算唯一值的个数 可以使用 IF、SUM、FREQUENCY、MATCH 和 LEN 函数执行此任务: 使用 IF 函数为每个 True 条件指定值 1。 使用 SUM 函数求和。 使用 FREQUENCY 函数计算唯一值的个数。FREQUENCY 函数忽略文本和零值。当某个值第一次出现时,此函数返回该值的出现次数。对于该值在第一次出现后的每次出现,此函数返回零。 使用 MATCH 函数返回区域中文本值的位置。返回的此值随后被用作 FREQUENCY 函数的参数,以便计算相应的文本值。 使用 LEN 函数查找空白单元格。空白单元格长度为 0。 示例 如果将示例复制到一个空白工作表中,可能会更容易理解该示例。

EXCEL提取重复值不重复值全部值的函数

E X C E L提取重复值不 重复值全部值的函数 Document serial number【LGGKGB-LGG98YT-LGGT8CB-LGUT-

Excel提取重复值、不重复值、全部值的函数1、从某行中提取 定义名称“数量1”:=COUNTA(Sheet2!$B$6:$IV$6) “区域1”:=OFFSET(Sheet2!$B$6,0,0,1,数量1) 除定义的名称外,以下(1)至(3)中的公式均为数组公式。 (1)提取有重复的数据 【思路】把区域中重复数据的第1个提取出来。 为避免拖动公式超出区域范围时出现的错误,前面加了一个IF函数判断是否超出区域范围。 {=IF(COLUMN(A1)>数量1,"",INDEX(6:6,SMALL(IF((COUNTIF(区域1,区域 1)>1)*(MATCH(区域1,区域1,0)=COLUMN(区域1)-1),COLUMN(区域 1),256),COLUMN(A1))) & "")} (2)提取没有重复的数据 {=IF(COLUMN(A1)>数量1,"",INDEX(6:6,SMALL(IF(COUNTIF(区域1,区域 1)=1,COLUMN(区域1),256),COLUMN(A1))) & "")} (3)提取全部数据,重复的只提取一次 {=IF(COLUMN(A1)>数量1,"",INDEX(6:6,SMALL(IF(MATCH(区域1,区域 1,0)=COLUMN(区域1)-1,COLUMN(区域1),256),COLUMN(A1))) & "")} 2、从某列中提取 定义名称“数量2”:=COUNTA(Sheet3!$B$7:$B$65536) “区域2”:=OFFSET(Sheet3!$B$7,0,0,数量2)

C++编程之函数模板

C++编程之函数模板 1、函数之模版出现 在调换两个数值之间的函数写法上,由于有int、float、double等不同的数据类型,如下例:[cpp]view plain copy 1.void swapValues(int& num1, int& num2 ) 2.{ 3.int temp; 4. temp = num1; 5. num1 = num2; 6. num2 = temp; 7.} 上例只能适合于int 类型的变量,假如要调用double类型的两个数调换,又要重写上面的函数(把上面int 的位置全改为double)。可以达到目的,但不高效。我们需要一种能交换各种数据类型变量的函数定义,它的表示方法如下所示: [cpp]view plain copy 1.void swapValues( TypeData& var1, TypeData& var2) 2.{ 3. TypeData temp; 4. temp = var1; 5. var1 = var2; 6. var2 = temp; 7.} 在C++语言中,上述函数定义方式是可行的。我们可以定义一个适用于各种数据类型变量的函数。 2、函数模版语法 模版定义和函数声明以如下方式:

template// class 可以用typename关键字,实际上标准模版就是typename,只是大家习惯class 通常称为模版前缀,它告诉编译器函数定义或函数声明是一个模版,T表示一个类型参数。 3、函数模版之示例 //demo.h [cpp]view plain copy 1.template 2.void swapValues(T& var1,T& var2) 3.{ 4. T temp; 5. 6. temp = var1; 7. var1 = var2; 8. var2 = temp; 9.} //main.cpp [cpp]view plain copy 1.#include 2.#include"demo.h" 3. https://www.sodocs.net/doc/0b4373702.html,ing namespace std; 5. 6.int main() 7.{ 8.int num1 = 1,num2 = 2; 9.char ch1 = 'A', ch2 = 'B'; 10. 11. cout<<"Original integer values are " 12. <

Excel2003中如何快速辨别重复数据

Excel2003中如何快速辨别重复数据 一、统计和a1单元格相同的数据,有多少个显示数据多少,如统计A列数据在B1单元格输入公式=countif(a:a,a1&"*")向下填充。 二、可用条件格式的公式:=countif(a:a,a1)>1 设置你要的单元格格式,假设字体为红色,这样重复的姓名就以红色显示了。之后把红色的删除掉。 格式→条件格式→在条件下选择“公式”再输入公式,在格式下选择相关标记。 Excel中有自动分辨哪些是相同数据的公式,你知道吗?学会应用他们可以帮助你整理数据的时候很快的帮你找到重复的数据,今天blue1000跟大家分享的就是Excel2003中如何快速辨别重复数据? 方法一、 Excel分别对AB列两列数据对比,比如A2=B2,就返回相同,否则返回不相同。 C2公式为:=IF(A2=B2,"相同","不同"),这样就可以实现excel两列对比。 不过细心的朋友会发现,A5和B5实质上有大小写区分的,因此使用这个公式不是完全准确。Excel中exact函数可以完全区分大小写,因此C2公式可以更改为:=IF(EXACT(A2,B2)=TRUE,"相同","不同"),然后下拉复制公式,完成e xcel两列数据对比。 方法二、 AB两列都是客户的姓名,需要找到两列重复的客户名称,并标示出来。 C1单元格输入数组公式:=IF(COUNTIF(A:A,B1)=0,"不重复",""),然后下拉完成excel两列数据对比。

方法三、 在Excel中通过比较两列中的数据来查找重复项。如果A列的数据没有在B 列出现过,就保留单元格为空。如果A列的数据在B列出现过,就返回A列对应的数据。 C1输入公式:=IF(ISERROR(MATCH(A1,$B$1:$B$5,0)),"",A1)。Match部分得到的结果是#N/A或者数字,然后用ISERROR函数,将#N/A错误值进行处理,I SERROR(#N/A)得到TRUE,ISERROR(数字)得到false,最外面用IF函数来进行判断,如果第一参数是true,就执行第二参数,否则执行第三参数。这个应用是巧用excel两列对比,完成查找重复项。 方法四、 Excel中用vlookup函数来对比两列。 B1单元格公式为:=IF(ISNA(VLOOKUP(A1,$C$1:$C$6,1,)),"←A有C无","←AC 共有") D1单元格公式为:=IF(ISNA(VLOOKUP(C1,$A$1:$A$6,1,)),"←C有A无","←CA共有") 然后下拉复制公式,完成Excel两列对比。

查找excel中不重复数据

Sub GetDistinctData() '定义一个遍历范围cell Dim cell As Range, res '定义Dictonary对象dataCollection Set dataCollection = CreateObject("Scripting.Dictionary") '遍历A1到A500所有单元格 For Each cell In Range("A1:A500") '假如单元格值不为空且dataCollection中未收录,则添加 If cell <> "" And (Not dataCollection.Exists(cell.Value)) Then dataCollection.Addcell.Value, CStr(cell.Value) End If Next '从dataCollection中获取刚才过滤之后的数据 res = dataCollection.Items '把数据不重复的写入B列 For i = 1 To dataCollection.Count Cells(i, 2) = res(i - 1) Next i End Sub 不重复值的自定义函数方案 (转自网络) 提取不重复值的自定义函数方案, Function MergerRepeat(Index As Integer, ParamArrayarglist() As Variant) '--------------------------------------------- ’ ’ ’功能:获得指定单元格区域或数组中的不重复集合或值 ’参数说明: ’Index:整型,当值小于1时,函数返回一个集合; ’大于1且小于不重复项的时,返回一个不重复的值 ’大于不重复项时,返回空。 ’a rglist():可为单元格区域或数组常量。 '---------------------------------------------- Dim NotRepeat As Object, tStr As String Set NotRepeat = CreateObject("Scripting.Dictionary") For Each arg In arglist For Each rRan In arg If TypeName(rRan) = "Range" Then If rRan.Value<> "" Then NotRepeat(rRan.Value) = 0 Else NotRepeat(rRan) = 0

EXCEL统计记录数但不包含重复的综合函数

EXCEL统计记录数但不包含重复的综合函数 在EXCEL中是没有单独的统计不包含重复记录的函数。 如果您想统计产品名称、姓名、品种、型号等的总记录数,但是又不包含重复的记录(也就是说,出现两次或多次,以一次计算),那么,就得使用综合函数来解决。 下面,给大家介绍个例子,用于统计记录个数,但是又不包含重复的。 比如:A1:A8这个区域,存在如下几个字母。 A1=a A2=a A3=b A4=c A5=d A6=d A7=b A8=e 现在,我们使用综合函数来统计一下,有多少个字母,注意哦,相同的只算一次。公式如下:{=SUM(1/COUNTIF(A1:A8,A1:A8))} 注意,以上的公式,是数组公式,是通过这种方法来输入的。 先在FX公式输入框中输入=SUM(1/COUNTIF(A1:A8,A1:A8))之后,同时按下键盘的Ctrl+Shift+Enter这三个键,公式就自动输入一对大括号了。 知识扩展: 为什么使用1/COUNTIF这种形式,多少分之一,是什么道理呢? 比如:某种产品名称,出现一次以1来计算,是正确的,但是,万一出现两次或多次,以2或N来统计,就是不对的,出现多次的应该也只能算一次。 有了如上的分析,我们的解决办法就是:假设每种产品出现N次,那么,每出现一次就以N分之一作为次数来算。如此,如果只出现一次,一分之一就等于一,刚好是要统计的数。如果出现8次,每次是八分之一,那么出现八次,刚好是8乘以八分之一,也正好是1次。这样就可以保证统计记录数的准确性。

根据如上的理论,我们就得出了1/COUNTIF(A1:A8,A1:A8)这种公式形式。

两张excel表格,都只有一列姓名,但不完全一样,怎么找出重复的部

竭诚为您提供优质文档/双击可除 两张excel表格,都只有一列姓名,但不完全一样,怎么找出重复的部 篇一:在excel表格里找出重复的名字 在excel表格里找出重复的名字 一、只要重复,都填充颜色 假设你输入的姓名在a列,选择a列,格式-条件格式,选择公式,输入公式:=countiF(a:a,a1)>1点开下面的“格式”的“图案”,设置一个填充颜色,(如果只是字体颜色的变化,就选择“格式”的“字体”)如图: 在a列里有 重复的姓名就自动的填充颜色了上面的设置是只要重复,都填充颜色效果: 二、如果重复,第一个数据不提示,第二个重复出现的才填充颜色 公式为=countiF(a$1:a1,a1)>1 效果: 三、“提取”所有出重复的姓名, 如图,b2的输入数组公式

=iF(iseRRoR(index($a$2:$a$15,small(iF(countiF($a$2: $a$15,$a$2:$a$15)>1,Row($a$2:$a$15)-1,4^8),Row(1:1) ))),"",index($a$2:$a$15,small(iF(countiF($a$2:$a$15 ,$a$2:$a$15)>1,Row($a$2:$a$15)-1,4^8),Row(1:1)))) 注:1、注意公式里的“$15”,此公式里的单元格引用区域请根据实际区域修改 2、公式输入后按ctRl+shiFt+enteR三键结束 向下复制公式,即可。 四、设数据 如图: 将公式=countiF(a:a,a2)复制后粘贴到“b2”单元硌,对准右下角,光标成“+”状时双击,如图: 筛选结果大于1的为重复,如图: 如果第二个才显示重复(二个只显示一个重复),则公式为:=countiF($a$1:a2,a2)如图: 篇二:excel两个表中人员姓名大致相同,如何查找姓名不同的记录 这里可用countiF()函数 第一步:把表一粘贴到一个新建表的sheet1中,在第一列的后面插入一空列,标题为“是否重复”,如图:第二步:把表二粘贴到sheet2,在第一列的后面插入一

如何删除Excel表里的重复数据

如何删除Excel表里的重复数据 如何在Excel 中删除重复记录或创建不重复记录的列表 概要 当Microsoft Excel导入或合并多条记录时,可能会创建重复的记录。本文介绍如何创建不重复记录的汇总列表。 更多信息 要创建不重复记录的汇总列表,请按照下列步骤操作:1. 选择要排序的行或记录上方的列标题。 2. 在数据菜单中,指向筛选,然后单击高级筛选。如果收到如下提示,请单击确定。 未检测到任何标题。是否将选定区域的首行用作标题行? 3. 在方式下,单击“将筛选结果复制到其他位置”。 4. 单击以选中“选择不重复的记录”复选框。 5. 在“列表区域”框中,键入或选择一个记录范围(如A3:H10)。 6. 在“条件区域”框中,键入或选择相同的记录范围(即A3:H10) 7. 在“复制到”框中,键入用于存放信息的第一个单元格的地址,或直接选择该单元格。请确保该区域有足够的空间,以免覆盖已存在的数据。 注意:只能在活动的工作表中执行此操作。 8. 单击确定。 注意 如果原始数据的第一条记录是重复的,则该记录在新列表中将出现两次。只隐藏第一行。 如果就地执行高级筛选命令,工作表仍包含所有记录。重复的记录将被隐藏。要变通解决这一问题,请指向“格式”菜单上的“行”,然后单击“取消隐藏”。 为两个函数“IF、COUNTIF”判断和统计来查找重复数据,方法:如B列中B1-B218的数据查找或数组查找B1-E50,公式如下: =IF(COUNTIF(B1:B218,B1)=1,"无重复","有重复") =IF(COUNTIF(B1:E50,B1)=1,"无重复","有重复") 边输入时边查找重复数据方法: 1.使用“数据有效性” 选定我们需要检查的数据,如“B1:E20”,单击“数据→有效性”,出现“数据有效性”对话框(请见图1)。在“允许”列表框处选择“自定义”,“公式”文本框中输入如下公式:“=COUNTIF($B$1:$E$20,B1)=1”。单击“出错警告”标签,勾选“输入无效数据时显示出错警告”,“样式”列表处选择“停止”,右侧为出错提示信息,在“标题”处输入“数据重复”,“错误信息”处输入“数据重复,请重新输入 当我们在B1:E20区域中的D7单元格中输入“张三”后,因为与同在该区域的B4单元格内容重复,所以立刻会弹出一个警告对话框,阻止重复输入的数据。只有取消或更换输入的内容后,输入操作才得到允许

Excel提取重复值、不重复值、全部值的函数.doc

4 5 6 7 8 9 V 全部数据, 源数据 1、 2 O 3S 重复的只提取一次 丑庚 p A I ■- 寅 辛 壬 我 丙子戊丑 丑丨寅丨丨 函数判断是否超 Excel 提取重复值、不重复值、全部值的函 数 1、从某行中提取 B8 ▼ 严[二IF(COL 呷N(*)>数革ir ;IHpEX(6:6 SMA^L(I£((C A | B | C 丨 D 丨 E I F | G | H | I | J I K 「L 丨 M I N 丨 0 [厂 1斗利用函数,分三种情况提取这一行的: F1.有重复的数I I I I I 3 2、没有重复的数振 定义名称“数量 T : =COUNTA(Sheet2!$B$6:$IV$6) “区域 V : =OFFSET(Sheet2!$B$6,0,0,1,数量 1) 除定义的名称外,以下(1)至(3)中的公式均为数组公式。 (1) 提取自重复的数据 【思路】把区域屮重复数据的第1个提取出来。 为避免拖动公式超出区域范围吋出现的错误,前面加了一个IF 出区域范围。 {=IF(C0LUMN(A1)> 数量 1,,,M ,INDEX(6:6,SMALL(IF((COUNTIF(区域 1,区域 1)>1)*(MATCH(区域 1,区域 1,0)=COLUMN(区域 1)-1),C0LUMN(区域 庚辛壬乙我 子

1),256),COLUMN(A1))) & :}

3 1 6 8 12 3 4 2 2 甲 乙 丙 丁 戊 己 庚 辛 壬 乙 我 丙 子 戊 丑 庚 寅 辛 丙戊 庚辛 甲丁 己壬 我手 丑 寅 甲乙 丙丁 戊己 庚 辛 壬我 子 (2)提取没有重复的数据{=IF(C0LUMN(A1 )> 数量 1 ,,n,,INDEX(6:6,SMALL(IF(COUNTIF(区域1,区域1)=1,C0LUMN(区域 1 ),256),C0LUMN(A1))) & ”“)} (3)提取全部数据,重复的只提取一次 {=IF(C0LUMN(A1)> 数量1,,,M,INDEX(6:6,SMALL(IF(MATCH(区域1,区域1,0)=COLUMN(区域1 )-1 ,COLUMN(区域1 ),256),C0LUMN(A1))) & ””)} 2、从某列中提取 D7▼朮=IF(ROW(A1)> 数量乙INDEX(B:B, SMALL (IF ((COW A B c D E F G H 1利用函分三种情况提取这一列的; 2K有重复的数据 3 2.没有重复的数据 4 3.全部数据,重复的只提取一次 5 6源数据结果123 定义名称“数量2?,: =COUNTA(SheeU3!$B$7:$B$65536) “区域2”: =OFFSET(SheeU3!$B$7,0,0,数量2) (1)提取有重复的数据 {=IF(R0W(A1 )>数量2,:INDEX(B:B,SMALL(IF((C0UNTIF(区域2,区域

excel2019表格数据透视表如何筛选重复

excel2019表格数据透视表如何筛选重复 篇一:EXCEL表格怎样把重复的名称和数据找出来 EXCEL表格怎样把重复的名称和数据找出来? 用了几个函数,不是重复的它显示是重复的,(显示重复的是数字相差10)盘头十字4*8 与盘头十字4*18它说重复,第一个不重复,第二个是重复了,这是什么原因?多谢高手 =IF(COUNTIF($A$1:A1,A1)>1,"重复","") 用单元格 =COUNTIF($A$1:A1,A1)>1 条件格式 不知道是不是要这样的,有问题在hi我。 追问 首先谢谢你,出现这样的情况,可能是数字原因,有办法不? 盘头十字4*18 盘头十字4*8 重复 盘头十字4*25 盘头十字4*5 重复 沉头十字3*14 沉头十字3*4 重复 因为你的*被excel当通配符处理了。所以你得先所里面的*给换掉。可以用excel的查找替换处理,也可以用公式 =IF(COUNTIF($A$1:A1,SUBSTITUTE(A1,"*",))>1,"重复","")

得说一下,你里面每个数据里都有*吗? 没有的话,就把上面公式里substitute的第三参数改一下,最好能改成数据里没有的。现在的公式是把所有的*给处删掉处理。但如果你的数据里有的没有*的话就会出错,比如“盘头4*18”和“盘头418”就一样了。 不是我想出来了,是经老师指点才知道 用的2019吧,用2019直接就有一个检查重复的工具,不用你去写啥函数.如图,选择重复值 我想把相同数据找出来然后都删掉,只保留不重复的数据应该怎么做 举个例子,比如 1 2 2 3 3 3 4 4 5 最后只保留 1

在数据透视表中统计不重复值数量的方法

在数据透视表中统计不重复值数量的方法 在用数据透视表分析数据的过程中,有时需要统计某字段中不重复值(唯一值)的数量。例如下所示的数据源为一个随日期不断增加记录的销售流水表,其中各“分店”都有一些人员包含多条销售记录,如“姓名4”。现在需要在数据透视表中得到各“分店”有销售记录的人员数量,即得到表中各“分店”不重复“姓名”的数量。 如果直接在数据透视表中把“姓名”字段放到“数值”区域,仅能得到全部记录的计数值,而不是唯一的“姓名”数量。 在这种情况下,可以用添加辅助列、使用SQL命令和利用PowerPivot的方法在数据透视表中得到不重复值数量。本文以上图中的数据为例,介绍在Excel 2010的实现方法,供参考。 方法一:添加辅助列 1.在表格的右侧增加一个辅助列,并设置一个列标题,如“人员数量”,在E4单元格中输入公式: =IF(COUNTIF($C$4:C4,C4)=1,1,"")

然后填充公式到最后一行。 2.将数据区域转换为Excel 表格,这样当增加记录后,数据透视表可自动扩展数据源。方法是选择数据区域中的某个单元格,如C10单元格,依次选择“插入→表格”,弹出“插入表”对话框,单击确定。Excel将创建一个名称为“表1”的Excel表。 3.创建数据透视表。 选择上述表格中的某个单元格,依次选择“插入→数据透视表→数据透视表”,弹出“创建数据透视表”对话框,设置放置数据透视表的位置后确定。 将“分店”字段拖入到“行区域”,将“人员数量”字段拖入到“数值区域”。 右击数据透视表中的“人员数量”字段,选择“值字段设置”,在弹出的对话框中将该字段的“值汇总方式”由“计数”改为“求和”后确定,即可得到各“分店”中唯一“姓名”的数量。 方法二:使用SQL命令 1添加连接。

C++函数模板(Function Template)

在《C++函数重载》一节中,为了交换不同类型的变量的值,我们通过函数重载定义了四个名字相同、参数列表不同的函数,如下所示: 1.//交换int 变量的值 2.void Swap(int*a,int*b){ 3.int temp =*a; 4.*a =*b; 5.*b = temp; 6.} 7. 8.//交换float 变量的值 9.void Swap(float*a,float*b){ 10.float temp =*a; 11.*a =*b; 12.*b = temp; 13.} 14. 15.//交换char 变量的值 16.void Swap(char*a,char*b){ 17.char temp =*a; 18.*a =*b; 19.*b = temp; 20.} 21. 22.//交换bool 变量的值 23.void Swap(bool*a,bool*b){ 24.char temp =*a; 25.*a =*b; 26.*b = temp; 27.} 这些函数虽然在调用时方便了一些,但从本质上说还是定义了三个功能相同、函数体相同的函数,只是数据的类型不同而已,这看起来有点浪费代码,能不能把它们压缩成一个函数呢?

能!可以借助本节讲的函数模板。 我们知道,数据的值可以通过函数参数传递,在函数定义时数据的值是未知的,只有等到函数调用时接收了实参才能确定其值。这就是值的参数化。 在C++中,数据的类型也可以通过参数来传递,在函数定义时可以不指明具体的数据类型,当发生函数调用时,编译器可以根据传入的实参自动推断数据类型。这就是类型的参数化。 值(Value)和类型(Type)是数据的两个主要特征,它们在C++中都可以被参数化。 所谓函数模板,实际上是建立一个通用函数,它所用到的数据的类型(包括返回值类型、形参类型、局部变量类型)可以不具体指定,而是用一个虚拟的类型来代替(实际上是用一个标识符来占位),等发生函数调用时再根据传入的实参来逆推出真正的类型。这个通用函数就称为函数模板(Function Template)。 在函数模板中,数据的值和类型都被参数化了,发生函数调用时编译器会根据传入的实参来推演形参的值和类型。换个角度说,函数模板除了支持值的参数化,还支持类型的参数化。 一但定义了函数模板,就可以将类型参数用于函数定义和函数声明了。说得直白一点,原来使用int、float、char 等内置类型的地方,都可以用类型参数来代替。

Excel中最值得收藏的12个函数公式(精选)

Excel中最值得收藏的12个函数公式(精选) 文/赵志东(来自excel精英培训微信平台)兰色今天精选出12个excel函数公式,虽然它们不并常用,但需要用时你还真不好搜到,所以赶紧收藏起来吧。 1、动态获取A列最后一个数字 =LOOKUP(1,0/(A2:A100>0),A2:A100) 2、不重复个数公式 =SUMPRODUCT(1/COUNTIF(A2:A7,A2:A7)) 3、提取唯一值公式 =IFERROR(INDEX(A:A,SMALL(IF(MATCH(A$2:A$7,A$2: A$7,0)=ROW(A$1:A$6),ROW(A$2:A$7)),ROW(A1))),'') 4、中国式排名公式 =SUMPRODUCT(($D$4:$D$9>=D4)*(1/COUNTIF(D$4:D $9,D$4:D$9))) 5、提取字符串任一位中的数字A1的值为ABC123.45FE ,截取结果:123.45数组公式: {=LOOKUP(9^9,MID(A1,MATCH(1,MID(A1,ROW(1:9),1)^ 0,0),ROW(1:9))*1)} 6、金额大写转换公式 =TEXT(LEFT(RMB(A2),LEN(RMB(A2))-3),'[>0][dbnum2]G /通用格式元;[

7、个人所得税计算公式假如A2中是应税工资,则计算个税公式为: =5*MAX(A2*{0.6,2,4,5,6,7,9}%-{21,91,251,376,761,1346,3 016},) 8、一对多查找包含公式=COUNT(FIND({'AAA花苑','CCC 龙廷'},A2)) 9、Vlookup多表查找公式 工资表模板中,每个部门一个表。 在查询表中,要求根据提供的姓名,从销售~综合5个工作表中查询该员工的基本工资。方法1: =IFERROR(VLOOKUP(A2,服 务!A:G,7,0),IFERROR(VLOOKUP(A2,人 事!A:G,7,0),IFERROR(VLOOKUP(A2,综 合!A:G,7,0),IFERROR(VLOOKUP(A2,财 务!A:G,7,0),IFERROR(VLOOKUP(A2,销售!A:G,7,0),'无此人信息')))))方法 2=VLOOKUP(A2,INDIRECT(LOOKUP(1,0/COUNTIF(INDI RECT({'销售';'服务';'人事';'综合';'财务'}&'!a:a'),A2),{'销售';'服务';'人事';'综合';'财务'})&'!a:g'),7,0)10、Sumif多表求和公式工作表名称常常是不规则的,如下图所示 分析:首先我们需要用宏表函数取得表名公式- 名称管理器- 新建名称- 在新建名称中输入名称“sh”,然后“引用位置”

Excel统计不重复项的

Excel统计不重复项的(数组)公式 2010-04-07 15:54:06| 分类:Excel | 标签:|字号大中小订阅 这两个公式,有空的单元格时会出错。 https://www.sodocs.net/doc/0b4373702.html,/question/108209201.html 统计不重复项的Excel数组公式 {=SUM(1/COUNTIF(A1:A7,A1:A7))} 举个简单的例子,比如,A1:A7中有A,A,A,B,C,D,D 首先COUNTIF(A1:A7,A1:A7) 返回对每个单元格里面的数值统计的个数,返回 {3,3,3,1,1,2,2},对应{A,A,A,B,C,D,D} 就很容易明白,返回的是这组数据 每个所对应的个数。 其次,用1去除,如果返回个数是1的,就还等于1,如果返回个数是大于1的, 比如是n,就会变成1/n ,一共会有n个1/n(这点明白很关键),比如上面就返回{1/3,1/3,1/3,1,1,1/2,1/2} 最后,用SUM去求和,n个1/n相加,就等于1,意思是,有重复项的,只计作了1, 所以就能统计不重复项了 =sumproduct(1/countif(a1:a1000,a1:a1000)) ************ 你数据中有空格就会出错了. ************ 假设你的数据在A1:A1000 你在B1输入 =IF(COUNTIF($A$1:A1,A1)=1,1,0) 然后向下填充到B1000,再对B列求和,得出的结果就不重复的数据. *********** 数据-筛选-高级筛选 列表区域中引用你的数据区域, 在“不重复记录“前打勾 确定. 出来的结果就是不复记录. 在左下方会显示筛选出来多少条记录的,那就是个数了.或用 SUBTOTAL(103,A1:A1000)

相关主题