跨层累加

教学视频

目标

要实现的效果如下图所示:

image-20211109133254518

在上图当中,最后一列会根据当前年份分组进行累加,对于每个年份分组的第一行,如果当前年份之前还存在数据,那么就尝试取上一个年份的最后一行的累加数值与当前的进口额度数值进行累加,否则就取对应的进口额度数值。

实现

创建一个关联trade表的数据集,如下图:

image-20211109110854863

设计一个两行四列的数据报表,并在D2单元格中添加表达式,如下图:

image-20211109133415304

D2单元格表达式为:&B2>1 ? C2+D2[B2:-1] : C2+D2[A2:-1,B2:!1],这是一个典型的三元表达式,具体来说就是根据当前单元格位置判断展开后的B2单元格序号是不是大于1,如果是那么执行表达式C2+D2[B2:-1] ,否则执行表达式C2+D2[A2:-1,B2:!1]。

下面的表格解释了这个表达式各个部分的含义:

表达式 含义
&B2 根据当前单元格位置取B2单元格展开后的序号
C2 根据当前单元格位置取对应的C2单元格值
D2[B2:-1] 根据当前单元格位置取B2单元格的上一格下所有的D2所有单元格值
D2[A2:-1,B2:!1] 根据当前单元格位置取A2单元格的上一格,然后再从这个A2单元格中取展开后的B2单元格的最后一个单元格,再从这个最后一个展开的B2单元格中取D2单元格的值

保存预览就可以看到期望效果。

results matching ""

    No results matching ""