层次坐标
在进行报表设计时,单元格尚未扩展,但是其它单元格的表达式可能需要此单元格扩展后的位置。这时,就要对扩展后的每个单元格进行唯一性定义,这就是单元格的层次坐标。层次坐标是用于唯一描述(精确定位)扩展后的每一个单元格的表达式。
例如:
对于该主格,C2[A1:3,B1:2]表示对应的附属格,即图中黄色单元格。
语法:
说明:
例1:
C1[A1:1,B1:2]的返回值为5;
C1[A1:2,B1:3]的返回值为12;
C1[A1:3,B1:4]的返回值为21。
例2:
C3[A3:1,B3:2;C1:2,C2:3]的返回值为216;
C3[A3:3,B3:3;C1:1,C2:2]的返回值为255;
C3[A3:2,B3:1;C1:3,C2:2]的返回值为228;
C3[A3:3,B3:1;C1:3,C2:3]的返回值为248。
在上述的层次坐标的表示法中,如果目标单元格Cellx本身是扩展单元格,那么要唯一描述(精确定位)其扩展后的单元格的位置,可以写为Cellx[Lk:lk,Lk-1:lk-1...L1:l1,Cellx:n],其中n为Cellx扩展后的次序。与之类似,如果Cellx只有上主格,可以写为Cellx[Tk:tk,Tk-1:tk-1...T1:t1,Cellx:n]。
例如:上面例1的图中,B1[A1:2,B1:2]的返回值为5,B1[A1:3,B1:4]的返回值为7。
层次坐标,在文档中统一用[Coordinate]表示。
在层次坐标中,并不一定指定到最低一级主格扩展后的位置。在这种情况下,Cellx[Coordinate]会返回扩展后的若干单元格中的第一个,Cellx[Coordinate]{CriteriaExp}会返回扩展后的若干单元格中符合条件的单元格的集合,参见:格集。
层次坐标[Coordinate]的运算结果指向目标单元格的位置。如果层次坐标能够定位到一个单元格,那么Cellx[Coordinate]返回该单元格的值;如果定位到多个单元格,那么Cellx[Coordinate]返回这些单元格中第一个单元格的值。
例如:
C3[A3:1,B3:2;C1:2]的返回值为212;
C3[A3:3;C1:1,C2:2]的返回值为229;
C3[A3:2;C1:3,C2:3]的返回值为231。
层次坐标还可以用相对位移来表示,参见:位移坐标。