以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 统计数据格式问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=68248) |
|
-- 作者:utcxray -- 发布时间:2015/5/13 11:05:00 -- 统计数据格式问题 代码如下: Dim d As Date = new Date(Date.Today.year, 1, 1) Dim b As New SQLCrossTableBuilder("统计表3","采购明细") b.C b.HGroups.AddDef("供应商") \'添加客户列用于水平分组 b.VGroups.AddDef("账期",DateGroupEnum.Year,"{0}年") \'添加日期列用于垂直分组,按年分组 b.VGroups.AddDef("账期","{0}月") \'添加日期列用于垂直分组 b.Totals.AddExp("应付","数量 * 单价") b.Totals.AddExp("已付","付款") b.Totals.AddExp("未付","数量 * 单价 - IsNull(付款, 0)") b.Subtotal = True \'生成汇总模式 b.VerticalTotal= True b.HorizontalTotal = True b.filter="账期 >= \'" & d & "\' and 账期 < \'" & d.AddYears(1) & "\'" Tables("应付分析_Table1").DataSource = b.BuildDataSource() With Tables("应付分析_Table1") .autosizeCols() End With CurrentTable.Cols.Frozen = 2 问题: 1、图中数据如何才能显示为按1‘000’000.00这样的格式。 2、图中合计未付为0的不显示,如何才能做到。 |
|
-- 作者:Bin -- 发布时间:2015/5/13 11:07:00 -- http://www.foxtable.com/help/topics/1659.htm .SetFormat("0,000.00")
|
|
-- 作者:大红袍 -- 发布时间:2015/5/13 11:10:00 -- 1、什么意思?你可以设置每一列的格式,用SetFormat
或者是循环每一个单元格,然后,其值;
2、需要你循环每一单元格,判断是否未0值,然后设置成nothing |
|
-- 作者:utcxray -- 发布时间:2015/5/20 17:52:00 -- With Tables("应付分析_Table1") .autosizeCols() .filter="合计_未付>0" End With 这解决了合计结果中未付是0的都不显示的问题
|
|
-- 作者:大红袍 -- 发布时间:2015/5/20 17:57:00 -- 汗,但是你这样隐藏了其它列不为0的数据啊 |
|
-- 作者:utcxray -- 发布时间:2015/5/20 18:05:00 --
[此贴子已经被作者于2015/5/20 18:16:17编辑过]
|
|
-- 作者:utcxray -- 发布时间:2015/5/20 18:17:00 -- 请看图 此主题相关图片如下:无标题.png |
|
-- 作者:大红袍 -- 发布时间:2015/5/20 19:10:00 -- 如果能实现你的功能,怎么做都可以。 |