反馈已提交

网络繁忙

插入删除行后动态汇总

  • 文档创建者:axing
  • 编辑次数:2次
  • 最近更新:Wendy123456 于 2022-08-08
  • 1. 概述

    1.1 问题描述

    在填报预览模式下,直接使用条件汇总公式可能不生效,如下:

    1657558742539084.gif

    1.2 实现效果

    在填报模式下,输入数据到控件之后可以动态汇总,插入删除行后也能动态汇总。如下所示:

    1657558867592892.gif

    2. 示例

    2.1 模板设计

    模板设计如下,A2、B2 单元格插入文本控件,A2 单元格设置纵向扩展。

    2.2 汇总公式设置

    A6 单元格输入公式:sum(B2[!0;!0]{A2 = "苹果"})

    B6 单元格输入公式:sum(maparray(split(A2,","),if(item = "苹果",indexofarray(split(B2,","),index),0)))

    A6 单元格公式解析参见帮助文档 条件汇总

    B6 单元格公式解析如下:

    公式解析

    split(A2,",")、split(B2,",")

    将A2、B2单元格扩展出来的所有值转化成数组,直接使用单元格引用的话,如果扩展的值只有一个,那么就无法被当做数组来计算。另外如果使用array()函数来转换,在部分jar下不生效。

    maparray(split(A2,","),if(item = "苹果",indexofarray(split(B2,","),index),0))

    将得到的A2扩展出来的数组进行转化。如果值等于苹果,那么就转化为B2扩展出来的对应下标的值,否则就等于0

    sum(maparray(split(A2,","),if(item = "苹果",indexofarray(split(B2,","),index),0)))

    将上一步转化后的数组进行汇总

    2.4 预览效果

    PC端如 1.2 小节所示。

    移动端:

    动态汇总h5.gif

    3. 模板下载

    点击下载模板:

    插入删除行后动态汇总.cpt

    4. 注意事项

    注:A6 单元格公式在部分版本下会随着插入行刷新计算结果

           部分版本可以使用这个公式来实现效果:sum(greparray(array(B2),indexofarray(array(A2),index)="苹果"))

           此公式在11.0.5(Build#persist-2022.06.15.17.11.21.865)版本测试下,array公式和greparray公式没有生效。

           



    附件列表


    主题: 填报应用
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    在线QQ:800049425

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526

    文 档反 馈

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭