Foxtable(狐表)用户栏目专家坐堂 → [求助]关于环比问题


  共有5881人关注过本帖树形打印复制链接

主题:[求助]关于环比问题

帅哥哟,离线,有人找我吗?
virmix
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:8 积分:111 威望:0 精华:0 注册:2022/5/2 18:28:00
[求助]关于环比问题  发帖心情 Post By:2022/5/14 12:21:00 [显示全部帖子]

请教一下老师,像这种日期是列维度的 环比要怎么加?就像份额那样子显示,在每个日期后面加入比如前一日的日环比。

图片点击可在新窗口打开查看
[此贴子已经被作者于2022/5/14 12:54:49编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
virmix
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:8 积分:111 威望:0 精华:0 注册:2022/5/2 18:28:00
  发帖心情 Post By:2022/5/14 14:40:00 [显示全部帖子]

非常感谢版主回复我的帖子

我这个表格是用交叉统计生成的查询表,是否可以写一段代码在生成查询的时候就在每日的销售数据后面显示这个环比

目前的查询代码是自动生成的,如下

Dim g As New CrossTableBuilder("每日销售统计", DataTables("浙江_日明细"))
g.HGroups.AddDef("团长ID")
g.VGroups.AddDef("日期", DateGroupEnum.None)
g.Totals.AddDef("当天销售件数", "当天销售件数")
g.Totals.AddDef("当天销售额", "当天销售额")
g.OrderByTotal = True
g.HorizontalTotal = True
g.VerticalTotal = True
g.Build()
MainTable = Tables("每日销售统计")


 回到顶部
帅哥哟,离线,有人找我吗?
virmix
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:8 积分:111 威望:0 精华:0 注册:2022/5/2 18:28:00
  发帖心情 Post By:2022/5/14 14:42:00 [显示全部帖子]

想要达到的效果如下
图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20220514144109.png
图片点击可在新窗口打开查看




 回到顶部
帅哥哟,离线,有人找我吗?
virmix
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:8 积分:111 威望:0 精华:0 注册:2022/5/2 18:28:00
  发帖心情 Post By:2022/5/15 0:06:00 [显示全部帖子]

版主老师,这个日环比的计算公式好像是错的呀,应该是 (B-A)/A 这样子的计算逻辑

环比增长率=(本期数-上期数)/上期数×100%

 回到顶部
帅哥哟,离线,有人找我吗?
virmix
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:8 积分:111 威望:0 精华:0 注册:2022/5/2 18:28:00
  发帖心情 Post By:2022/5/16 12:34:00 [显示全部帖子]

非常感谢版主老师,问题得到初步的解决,由于增加了几列和计算逻辑变动,便于后续的新人梳理思路

具体代码内容如下:

Dim dc As DataCol 
Dim lst As New List(Of String)
Dim t As Table = Tables("每日销售统计")
t.StopRedraw
Dim cnt As Integer = t.cols.Count
For i As Integer = t.cols.Count - 1 To 6 Step - 1
    Dim s As String = t.cols(i).Name & " 环比"
    lst.Add(s)
    dc = DataTables("每日销售统计").datacols.add(s, GetType(Double), "IIf(" & t.cols(i - 1).Name & " Is null, 1, (" & t.cols(i).Name & " - " & t.cols(i - 1).Name & ") / " & t.cols(i - 1).Name & ")", t.cols(i).Caption & " 环比")
    dc.SetFormat("0.00%")
Next

For Each s As String In lst
    t.cols(s).Move(t.cols(s.Split(" ")(0)).Index + 1)
Next
t.AutoSizeCols
t.ResumeRedraw

 回到顶部
帅哥哟,离线,有人找我吗?
virmix
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:8 积分:111 威望:0 精华:0 注册:2022/5/2 18:28:00
  发帖心情 Post By:2022/5/16 14:19:00 [显示全部帖子]

老师再请教一下,我这个交叉表格用代码处理完之后导出来的excel表格 环比数据是小数点,怎么才能让这个表格导出来的环比数据直接是百分比的数据形式?谢谢。

 回到顶部
帅哥哟,离线,有人找我吗?
virmix
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:8 积分:111 威望:0 精华:0 注册:2022/5/2 18:28:00
  发帖心情 Post By:2022/5/16 14:54:00 [显示全部帖子]

用代码处理完查询表之后 使用自带的导出功能,excel文件格式为 2007 的


图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20220516145303.png
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
virmix
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:8 积分:111 威望:0 精华:0 注册:2022/5/2 18:28:00
  发帖心情 Post By:2022/5/16 14:57:00 [显示全部帖子]

在狐表里面显示是正常的百分比,导出来之后就成了小数点了,数据类型变了    就像    0.544333222   这样子的   狐表里面显示是 54.43%

 回到顶部