关键是,参数cols固定为数组{0,1,2,3},显然意味着四个元素组合中的每个都将分别来自四个不同列,然后变换传递给参数rows的数组,即满足确保没有两个元素在同一行的条件的所有可能排列。...本例中,我们感兴趣的将是1234和4321(实际上我们最终需要的是0123和3210;但是,如果将0123传递给ROW函数,将被解释为123,因此我们的计算将是比目前更大的数组。...然后测试数组中每个元素是否都包含数字1、2、3、4:
FIND({1,2,3,4},ROW(INDIRECT("1234:4321")))
将产生一个3088行4列的数组,其12352个元素将是对上述数组的所有...现在,对于将在公式的IF语句中生成TRUE的24个值(1234、1243、1324等)中的每一个,提取一个由这四个数字组成的数组(其每个数组为{1,2,3,4}、{1,2,4,3}、{1,3,2,4}等...,包含数字0、1和2的所有可能排列。