1、MODEMODE(number1number1,number2,.)By_qlz110 Number1, number2, . 是用于众数计算的 1 到 30 个参数,也可以使用单一数组(即对数组区域的引用)来代替由逗号分隔的参数。 说说明明: 1.参数可以是数字,或者是包含数字的名称、数组或引用。 2.如果数组或引用参数包含文本、逻辑值或空白单元格,则这些值将被忽略;但包含零值的单元格将计算在内。 3.如果数据集合中不含有重复的数据,则 MODE 数返回错误值 N/A。 一、用mode()求次众数。利用说明2的特性,先将众数转为文本值,再求次众数。实际应用见 例一:分别求出A17:h18中出
2、现次数最多的,第二多的数。 855 k0004 033 hhhhh 众数0 次众数5 小结:关键是利用特性2先把众数消掉,再求次众数。通式:次众数mode(if(数据mode(数据),数据))。这个方法用于处理内存数 组很有用,内存数组中出现频率最高的一般是0,而我们要求的往往是出现次数最多的非0数。 二、用mode()求包含非数值的“众数“,即求某连续单元格区域中出现次数最多的的值(包含文本、逻辑值,不含错误值。)。 855500040 非数值“众数“0 小结:首先利用match(数据,数据,0)将求出数据(包含非数值型)的位置(因此要求数据区域必须是连续的),再用mode(match(数据
3、,数 据,0)求出出现频率最高的值的位置。最后用查找及定位函数如:offset()、index()、indirect()等求出这个值。 通式1:offset(数据所在行的第一个单元格引用,,mode(match(数据,数据,0)-1)。 三、用mode()来设置防止录入重复数据及判断重复值。 1. 利用说明3来防止录入重复(数值型)数据,如A33:A44中,如果有重复数据(如2),整个区域变红警告。只要在条件格式中设置公式 NOT(ISNA(MODE($A$33:$A$44)即可。 当然,防止录入重复数据用别的办法也许更好,如数据有效性,这里只是提供一种思路。(此贴出来后,有位网友想用复制的方
4、法录入数据,这 时数据有效性无法判断,而用此法可以。详见下面链接: 作者于2005-11-1编辑) 1 2 2 3 4 5 6 7 8 9 10 11 2.用mode()来判断重复值,具体例子见简单应用 较复杂的应用 443重复 454重复 222重复 123456不重复 h3 hhh3 h Number1, number2, . 是用于众数计算的 1 到 30 个参数,也可以使用单一数组(即对数组区域的引用)来代替由逗号分隔的参数。 2.如果数组或引用参数包含文本、逻辑值或空白单元格,则这些值将被忽略;但包含零值的单元格将计算在内。 小结:关键是利用特性2先把众数消掉,再求次众数。通式:次众
5、数mode(if(数据mode(数据),数据))。这个方法用于处理内存数 组很有用,内存数组中出现频率最高的一般是0,而我们要求的往往是出现次数最多的非0数。 二、用mode()求包含非数值的“众数“,即求某连续单元格区域中出现次数最多的的值(包含文本、逻辑值,不含错误值。)。 小结:首先利用match(数据,数据,0)将求出数据(包含非数值型)的位置(因此要求数据区域必须是连续的),再用mode(match(数据,数 据,0)求出出现频率最高的值的位置。最后用查找及定位函数如:offset()、index()、indirect()等求出这个值。 通式1:offset(数据所在行的第一个单元格引用,,mode(match(数据,数据,0)-1)。 三、用mode()来设置防止录入重复数据及判断重复值。 1. 利用说明3来防止录入重复(数值型)数据,如A33:A44中,如果有重复数据(如2),整个区域变红警告。只要在条件格式中设置公式 NOT(ISNA(MODE($A$33:$A$44)即可。 当然,防止录入重复数据用别的办法也许更好,如数据有效性,这里只是提供一种思路。(此贴出来后,有位网友想用复制的方法录入数据,这 时数据有效性无法判断,而用此法可以。详见下面链接: 作者于2005-11-1编辑)