Excel 可以识别';混合';二进制编码数据序列?
任何帮助都将不胜感激 如果我在Excel中有以下数据行(以下5个示例),其中数据编码为1或2,有人知道一个Excel公式,可以识别/突出显示包含1和2的混合行吗 我只对混合了1和2的序列感兴趣。 比如, 1,2,2,2,2,1,2,2,2(这个序列有一个混合物) 1,1,1,1,1,1,1,1,1,1。(此序列没有混合物) 1,2,2,1,1,2,2,1。(此序列有一个混合物) 2,2,2,2,2,2,2,2,2,2。(此序列没有混合物) 一,一,二,二,一,一,二,一,一。(此序列有一个混合物) 目前,我使用以下公式突出显示/识别只有1或2的非混合序列 =IF(iError(FIND(“2222222”,TEXTJOIN(“,TRUE,A1:A9))),FALSE,TRUE) =IF(iError(FIND(“111111111”,TEXTJOIN(“,TRUE,A1:A9))),FALSE,TRUE)Excel 可以识别';混合';二进制编码数据序列?,excel,excel-formula,Excel,Excel Formula,任何帮助都将不胜感激 如果我在Excel中有以下数据行(以下5个示例),其中数据编码为1或2,有人知道一个Excel公式,可以识别/突出显示包含1和2的混合行吗 我只对混合了1和2的序列感兴趣。 比如, 1,2,2,2,2,1,2,2,2(这个序列有一个混合物) 1,1,1,1,1,1,1,1,1,1。(此序列没有混合物) 1,2,2,1,1,2,2,1。(此序列有一个混合物) 2,2,2,2,2,2,2,2,2,2。(此序列没有混合物) 一,一,二,二,一,一,二,一,一。(此序列有一个混合物
但现在我正在寻找一个公式,可以显示混合序列。如果您确实想识别包含1和2的混合行,您可以使用如下计数器:
=AND(COUNTIF(A1:J1,1),COUNTIF(A1:J1,2))
如果您想更简洁,可以使用
=VAR(A1:I1)>0
(所有答案都解决了前面提到的问题。你可以说我的原始答案在处理空白单元格和超出范围的值(如0或3)的意义上是可靠的)在
J1
公式中复制下来:
=SUMPRODUCT(A1:I1-I1)<>0
=SUMPRODUCT(A1:I1-I1)0
编辑:
公式逻辑解释
取公式的这一部分进行检查:
在K1中,输入:
=SUMPRODUCT(A1:I1-I1)变成>>
=SUMPRODUCT({1,2,2,2,1,2,2,2}-2)变成>>
=SUMPRODUCT({-1,0,0,0,0,-1,0,0})变成>>
=-2
及
在K2中,输入:
=SUMPRODUCT(A2:I2-I2)变成>>
=SUMPRODUCT({1,1,1,1,1,1,1,1}-1)变为>>
=SUMPRODUCT({0,0,0,0,0,0,0})变成>>
=0
然后
由于该范围只有2个数字(1或2)
如果范围减去任何一个数字
总和必须等于“0”的范围(所有数字相同)
否则,“不是0”
按照这个逻辑,在使用COUNTIF函数时,可以有另一个类似于Tom Sharpe建议公式的解决方案
=COUNTIF(A1:J1,I1)<>COUNT(A1:J1)
=COUNTIF(A1:J1,I1)计数(A1:J1)
或者:
J1
中的公式:
=MOD(SUM(A1:I1),9)>0
或:
作为条件格式公式,我选择了A1:I7
,例如,使用:
=STDEV($A1:$I1)>0
如果您有O365,您可以使用:
=COUNT(UNIQUE(A1:I1,TRUE))=2
如果混合,将返回
TRUE
,否则返回FALSE对于O365之前的版本,将再返回一个选项-作为数组公式输入:
=OR(A1:H1<>I1)
=或(A1:H1I1)
编辑后的数组公式通过按ctrl键确认
哇,我喜欢这个解决方案的简单性。它很整洁,不是吗?我的脑海里一直在想,可能会有其他使用差异的方法,但我选择了更明显的方法。@bosco_yip-这是一个超级答案,但我觉得需要对该方法进行一些简单的解释。@Robin Mackenzie,这是一个简单的公式。取公式的这一部分检查=SUMPRODUCT(A1:I1-I1)。由于范围只有2个数字(1或2),如果范围减去任何一个数字,那么范围(所有数字都相同)的总和必须等于“0”,否则“不是0”@bosco_yip-这对您来说很简单;我也理解它是如何工作的——但对于那些阅读了你的答案并认为“很酷,但它是如何工作的……”的人来说,它的效用并不一定很清楚。为什么不编辑您的答案并提供更多的解释呢?因为它不需要CSE,所以是Excel O365的赢家。这是一个很棒的代码高尔夫游戏,如果你在玩代码高尔夫,也许=VAR(A1:I1)>0就可以了。是的!汤姆,你赢了这是解决问题的好办法汤姆,干杯!!:)哇@JvdV,这些答案太棒了,我真的很感谢你为帮助我所付出的巨大努力!
=STDEV($A1:$I1)>0
=COUNT(UNIQUE(A1:I1,TRUE))=2
=OR(A1:H1<>I1)