原来我的一位学生,现在做电商数据分析,天天对着大量数据分析,而,商品货号有相似,核对起来很是费劲,一会儿就头昏脑涨。原来她看过一篇文章,就提出一个问题:如果不按奇偶行,而按照货号上间隔色,就更好了,能不能实现呢?
简化数据如下:
是不是数据眼花缭乱?
改成下面的格式:
数据顿时明朗起来了吧?!
实现方法
其实,加间隔色,不外乎“条件格式”,只不过,得用稍微复杂一点的“根据公式”定义格式。
1、选中数据区域(除去标题),【开始】——【条件格式】——【新建规则】:
2、【新建条件规则】——【使用公式确定要设置格式的单元格】,输入公式:
=MOD(INT(SUMPRODUCT(1/COUNTIF($A$2:$A2,$A$2:$A2))),2),如下图:
3、【格式】——【填充】,选一种不刺眼,或者你喜欢的颜色:
通过以上几步设置,就得到根据货号设置的间隔色。
公式解释
总公式:
=MOD(INT(SUMPRODUCT(1/COUNTIF($A$2:$A2,$A$2:$A2))),2)
将公式输入数据表中,可以看到结果:
公式返回值要么是1,要么是0,凡是返回值是1的,相应的行填充颜色。
I18单元格的公式为例
=MOD(INT(SUMPRODUCT(1/COUNTIF($A$2:$A18,$A$2:$A18))),2)
其中:
COUNTIF($A$2:$A18,$A$2:$A18):
返回数组:
{4;4;4;4;3;3;3;2;2;3;3;3;3;3;3;2;2}
COUNTIF($A$2:$A18,$A$2:$A18):
返回数组:
{1/4;1/4;1/4;1/4;1/3;1/3;1/3;1/2;1/2;1/3;1/3;1/3;1/3;1/3;1/3;1/2;1/2}
SUMPRODUCT(1/COUNTIF($A$2:$A18,$A$2:$A18)):
将上述数组元素相加,得6;
INT(SUMPRODUCT(1/COUNTIF($A$2:$A18,$A$2:$A18))):
将SUMPRODUCT的返回值取整;
MOD(INT(SUMPRODUCT(1/COUNTIF($A$2:$A18,$A$2:$A18))),2):
将上一步正数除以二取余数,为0。
余数为0,则不填充颜色,为1则填充颜色。