找文章 / 找答案
精选问答 更多内容

[可视化] 自由式表格-小计格间计算

Cathy_白银一 显示全部楼层 发表于 2024-7-17 18:50:09 |阅读模式 打印 上一主题 下一主题
10
未解决

【可视化】 自由式表格-小计格间计算

  • 永洪社区YVP Cathy_白银一
  • 2024-07-17 18:50:09
  • 发布在 论坛
1823 16

如图,目标列到基地维度的单元格等于左侧第一列乘以左侧第三列,品类小计单元格等于该品类下各基地算出来的值求和,用格间计算
rowTotal(cidx, 2 , ridx-1)得出的效果是:第一个品类小计正确,是该品类下各基地的值求和,但是第二个品类小计不是光第二个品类下各基地的只求和,而是把第一个品类下的也加了一遍,以此类推


想实现的效果如下图,父单元格也选择了,但是好像没起作用,没有识别从哪一行开始加





2024-07-17_184312.png
回复

使用道具 举报

精彩评论16

yhdata_ruby铂金一 显示全部楼层 发表于 2024-7-17 19:22:53
你试试这样写呢
var a;
for(var i=1;i<=ridx-1;i++){
    if(i==1){
        a=cell(1,cidx)
        }
    else if(cell(i,0)!="小计"&cell(i,0)!=cell(i-1,0)){
        a=cell(i,cidx)
        }
    else{
        a=a+cell(i,cidx)
        }
}
a;
回复

使用道具 举报

Cathy_白银一 显示全部楼层 发表于 2024-7-18 09:33:44
yhdata_ruby 发表于 2024-7-17 19:22
你试试这样写呢
var a;
for(var i=1;i

谢谢,计算出来结果是对的,能给解释一下吗,没理解else if那块
回复

使用道具 举报

yhdata_ruby铂金一 显示全部楼层 发表于 2024-7-18 11:09:42
Cathy_ 发表于 2024-7-18 09:33
谢谢,计算出来结果是对的,能给解释一下吗,没理解else if那块


else if后的意思就是判断第一列对应行的字段是否和上一行单元格的字段相同并且不是“小计”,如果以上两个条件都满足,那么 a 的值将被设为 cell(i,cidx),就从这里开始重新定义a的初始值。以便于else后面a去做循环
拿图片举例,a从最开始=1的时候被赋予971的值,=2的时候去判断第一列对应的字段(二级市场)是否=小计并且与上一行字段不同,不符合的话执行a=a+cell(i,cidx),一直到i=6的时候,符合了else if 的条件,在这里a重新被赋值为1029,继续向下循环计算

回复

使用道具 举报

Cathy_白银一 显示全部楼层 发表于 2024-7-18 14:34:10
yhdata_ruby 发表于 2024-7-18 11:09
else if后的意思就是判断第一列对应行的字段是否和上一行单元格的字段相同并且不是“小计”,如果以上两 ...

感谢指导,但是我这个表小计写在第二列了,第一列的小计行跟品类合并单元格了,不应该是cell(i,1)?还是说这个没关系?
另外请问,我再加一行总计,对应单元格为3个小计值求和应该怎么写,我这样改报错了
var a;
for(var i=1;i<=ridx-1;i++){
    if(i==1){
        a=cell(1,cidx)
        }
    else if(cell(i,0)="品类小计"){
        a=0
        }
    else{
        a=a+cell(i,cidx)
        }
}
a;
回复

使用道具 举报

yhdata_lyaa 显示全部楼层 发表于 2024-7-18 14:57:00
Cathy_ 发表于 2024-7-18 14:34
感谢指导,但是我这个表小计写在第二列了,第一列的小计行跟品类合并单元格了,不应该是cell(i,1)?还是 ...

是应该是cell(i,1)。
三个小计值求总和,直接绑定字段,不设置父级就是总计了
回复

使用道具 举报

Cathy_白银一 显示全部楼层 发表于 2024-7-18 15:10:38
yhdata_lyaa 发表于 2024-7-18 14:57
是应该是cell(i,1)。
三个小计值求总和,直接绑定字段,不设置父级就是总计了 ...

不是啊
我不是要绑定字段的总计,我是要算出来的再手动sum,并不等于整体总计,要是绑定字段的总计小计就没必要格间计算了
回复

使用道具 举报

Cathy_白银一 显示全部楼层 发表于 2024-7-18 15:13:41
yhdata_lyaa 发表于 2024-7-18 14:57
是应该是cell(i,1)。
三个小计值求总和,直接绑定字段,不设置父级就是总计了 ...

cell(i,1)不对,出来的小计等于上一个格子的值了
回复

使用道具 举报

Cathy_白银一 显示全部楼层 发表于 2024-7-18 15:39:27

额,这不是算总计报错了吗,所以再问问老师啊
回复

使用道具 举报

yhdata_lyaa 显示全部楼层 发表于 2024-7-18 15:42:19
Cathy_ 发表于 2024-7-18 15:39
额,这不是算总计报错了吗,所以再问问老师啊

现在总计算是怎么写的,报什么错了
回复

使用道具 举报

高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
50W

会员等你来哦

Copyright   ©2012-2024  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |《永洪社区协议》
返回顶部