Foxtable(狐表)用户栏目专家坐堂 → [原创]求助报表数值小数位问题


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

主题:[原创]求助报表数值小数位问题

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


加好友 发短信
等级:幼狐 帖子:73 积分:661 威望:0 精华:0 注册:2017/12/8 20:07:00
[原创]求助报表数值小数位问题  发帖心情 Post By:2018/1/24 13:02:00 [显示全部帖子]

各位老师:通过Excel报表模板截图1

图片点击可在新窗口打开查看此主题相关图片如下:截图1.png
图片点击可在新窗口打开查看
生成报表截图2

图片点击可在新窗口打开查看此主题相关图片如下:截图2.png
图片点击可在新窗口打开查看
在Excel报表模板中“期末余额”数值已设置成“数值”,小数2位

图片点击可在新窗口打开查看此主题相关图片如下:截图3.png
图片点击可在新窗口打开查看
生成报表中的“期末余额”小位数怎么有的是2位,有的没有小数位?还有“截止日期”,打开报表有时能显示,有时不能显示?是不是我是“试用版”的缘故?谢谢之前答疑的“有点甜”和“有点蓝”老师!




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


加好友 发短信
等级:幼狐 帖子:73 积分:661 威望:0 精华:0 注册:2017/12/8 20:07:00
  发帖心情 Post By:2018/1/24 15:25:00 [显示全部帖子]

好的老师,我代码里加进去,谢谢老师!!图片点击可在新窗口打开查看

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


加好友 发短信
等级:幼狐 帖子:73 积分:661 威望:0 精华:0 注册:2017/12/8 20:07:00
  发帖心情 Post By:2018/1/24 16:28:00 [显示全部帖子]

老师:按您的代码,问题解决了!合计金额正确应为297687.05,少了小数位的值。期末余额好像不是数值型的,单元格左上角有小三角,在生成Excel报表后,各单位格统计时不能显示“合计金额”。

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


加好友 发短信
等级:幼狐 帖子:73 积分:661 威望:0 精华:0 注册:2017/12/8 20:07:00
  发帖心情 Post By:2018/1/24 19:26:00 [显示全部帖子]

老师您好:按您说的改了代码后,已达到预期效果了,太谢谢您了,那个总的正确合计金额应该是297687.05,但报表生成还是297687.00,请问这是什么缘故?谢谢!老师我测了其他“业务员”的余额,合计金额都是小数位后不正确,都是****.00的状态,无法显示2位小数的值。
[此贴子已经被作者于2018/1/24 19:31:39编辑过]

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


加好友 发短信
等级:幼狐 帖子:73 积分:661 威望:0 精华:0 注册:2017/12/8 20:07:00
  发帖心情 Post By:2018/1/24 20:08:00 [显示全部帖子]

老师:加了vars("总期末余额") = cdbl(0.00),报表完美了!!图片点击可在新窗口打开查看图片点击可在新窗口打开查看谢谢老师!!!

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


加好友 发短信
等级:幼狐 帖子:73 积分:661 威望:0 精华:0 注册:2017/12/8 20:07:00
  发帖心情 Post By:2018/1/24 20:36:00 [显示全部帖子]

老师您好:1、像我这个“项目”的话,我想先用商业版试下,用商业版可以吗?商业版用一段时间后可以升级为开发版吗?2、如果不分年度(比如2018-2020年,主要是我不懂如何分年度)每天录入的数据都存在“客户往来明细表“中,几年下来,数据达到10万条之多,在查询数据时是不是有影响?3、老师有没有把数据分年度存储,且数据能结转到下一年度的学习案例吗?我学习下。谢谢老师!!

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


加好友 发短信
等级:幼狐 帖子:73 积分:661 威望:0 精华:0 注册:2017/12/8 20:07:00
  发帖心情 Post By:2018/1/24 22:13:00 [显示全部帖子]

老师您好:之前我忽略了一个问题,“客户往来明细表”中,原来设定的往来查询“开始日期”是月初1日,结束日期是月底(可以跨月查询),这样的话,“上期余额”是正确的。现在我想到一个问题,比如截图1中李四的客户“杭州市”12月20日到12月25日都有业务往来

图片点击可在新窗口打开查看此主题相关图片如下:截图1.png
图片点击可在新窗口打开查看
我在查询时“开始日期”选12月21日,“结束日期”选12月25日

图片点击可在新窗口打开查看此主题相关图片如下:截图2.png
图片点击可在新窗口打开查看
生成报表时“上期余额”无法显示12月20日的往来

图片点击可在新窗口打开查看此主题相关图片如下:截图3.png
图片点击可在新窗口打开查看
报表事件中的代码能帮我改下吗?“上期余额”显示为“客户往来查询”中“开始日期”控件前一天及之前的余额。
Select Case e.Book.TempLate
    Case "客户往来明细账"
        If Forms("客户往来查询").Opened AndAlso Forms("客户往来查询").Controls("startdate").text > ""
            Dim Filter As String = "业务员 = '" & e.DataRow("业务员") & "' and 客户名称 = '" & e.DataRow("客户名称") & "'"
            Dim d As Date = Forms("客户往来查询").Controls("startdate").value
            If  d.Month > 1 Then
                Dim fd As Date = new Date(d.Year,1,1)
                Dim ld As Date = new Date(d.Year,d.Month,1)
                Filter &= " and 日期 >= #" & fd & "# and 日期 < #" & ld & "#"
            End If
            Dim s1 = DataTables("客户往来明细表").Compute("Sum(应收账款)",Filter)
            Dim s2 = DataTables("客户往来明细表").Compute("Sum(已收账款)",Filter)
            vars("上期余额") = s1 - s2
            vars("应收余额") = s1 - s2
        Else
            vars("应收余额") = 0
            vars("上期余额") = 0
        End If
End Select

谢谢老师!





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


加好友 发短信
等级:幼狐 帖子:73 积分:661 威望:0 精华:0 注册:2017/12/8 20:07:00
  发帖心情 Post By:2018/1/25 8:37:00 [显示全部帖子]

老师:成功了!!!谢谢,谢谢!!!

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


加好友 发短信
等级:幼狐 帖子:73 积分:661 威望:0 精华:0 注册:2017/12/8 20:07:00
  发帖心情 Post By:2018/1/30 14:30:00 [显示全部帖子]

求助老师:如果我想把生成"客户余额表"的报表,“期末余额”为“0”的客户不再显示的话,代码要如何修改?谢谢老师!!
Select Case e.Book.TempLate
    Case "客户余额表"
        Dim filter As String
        If Forms("客户余额查询").Opened AndAlso Forms("客户余额查询").Controls("enddate").text > ""
            filter = "业务员 = '" & e.DataRow("业务员") & "' and 客户名称 = '" & e.DataRow("客户名称") & "' and 日期 <= #" & Forms("客户余额查询").Controls("enddate").value & "#"
        Else
            filter = "业务员 = '" & e.DataRow("业务员") & "' and 客户名称 = '" & e.DataRow("客户名称") & "'"
        End If
        Dim s1 = DataTables("客户往来明细表").Compute("Sum(应收账款)",Filter)
        Dim s2 = DataTables("客户往来明细表").Compute("Sum(已收账款)",Filter)
        vars("期末余额") = val(s1 - s2)
        vars("结束日期") = Forms("客户余额查询").Controls("enddate").text
        If e.ColumnName = "业务员" Then
            vars("总期末余额") = 0
        Else
            vars("总期末余额") += val(vars("期末余额"))
            vars("期末余额") = format(val(vars("期末余额")), "0.00")
        End If
End Select

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


加好友 发短信
等级:幼狐 帖子:73 积分:661 威望:0 精华:0 注册:2017/12/8 20:07:00
  发帖心情 Post By:2018/1/30 15:14:00 [显示全部帖子]

老师您好:筛选时出现可以的,我是想在生成报表时,因为“期末余额”为0了,不想让“它”在报表中再出现。也就是说报表中把“期末余额”为0的客户剔除掉。代码中不能实现吗?谢谢

 回到顶部
总数 16 1 2 下一页