=MAX(B2:AHQ901*--AND(LEFT(B2:AHQ901,1)=RIGHT(B2:AHQ901,1),MID(B2:AHQ901,2,1)=MID(B2:AHQ901,5,1),MID(B2:AHQ901,3,1)=MID(B2:AHQ901,4,1)))
在Excel 2013中尝试Euler挑战004。 我已经设置了一个简单的电子表格,它汇总了所有3位数字。 上面的数组应在此电子表格中找到最大数量,但是返回#value。 有什么建议吗?
答案 0 :(得分:1)
如果该公式返回#VALUE!
作为数组公式,则B2:AHQ901
中的某个位置是非数字值。
但是在数组上下文中使用AND
也存在问题。将首先使用整个数组评估AND
。对每个数组元素进行 not 评估。因此,如果整个数组中只有一个比较为false,则整个AND
将为false。
应该是:
{=MAX(IF(ISNUMBER(B2:AHQ901),B2:AHQ901)*
(LEFT(B2:AHQ901,1)=RIGHT(B2:AHQ901,1))*
(MID(B2:AHQ901,2,1)=MID(B2:AHQ901,5,1))*
(MID(B2:AHQ901,3,1)=MID(B2:AHQ901,4,1)))}