本帖最后由 ringdove 于 2011-8-15 09:45 编辑
离散数组整合为二维数组
此题的关键就是把七个一维数组组合成一个二维数组。
1. 可以用if通过=if({1,0},array1,array2)来构造,由于要嵌套n个if语句,可以分解逐步构造,见附件。最后组合成二维数组的公式如下- =IF({1,1,1,1,1,1,0},IF({1,1,1,1,1,0},IF({1,1,1,1,0},IF({1,1,1,0},IF({1,1,0},IF({1,0},A2:A9,C2:C9),E2:E9),G2:G9),I2:I9),K2:K9),M2:M9)
复制代码 2. 可以通过choose函数组合,公式如下- =CHOOSE({1,2,3,4,5,6,7},A2:A9,C2:C9,E2:E9,G2:G9,I2:I9,K2:K9,M2:M9)
复制代码 错误反思:
在用名称封装二维数组整合的过程中,单元格没有变成绝对引用,导致结果出错。
在用名称封装数组的时候,一般都需要用绝对引用,避免行列偏移。当然,也有情况会需要用到相对引用。
其他排序部分,要用到的小技巧就是原始数组的改造
具体解体思路及过程见附件 |