Dim b As New SQLCrossTableBuilder("统计表3","采购明细")
b.HGroups.AddDef("供应商") '添加客户列用于水平分组
b.VGroups.AddDef("账期","{0}月") '添加日期列用于垂直分组
b.Totals.AddExp("付款","数量*单价-iif([付款] is null, 0, [付款])","未付款_值")'添加表达式列:未付款用于统计'添加金额列用于统计
b.VerticalTotal= True
b.HorizontalTotal = True
'b.Build '生成统计表
Tables("采购管理_Table6").DataSource = b.BuildDataSource()
![dvubb 图片点击可在新窗口打开查看](skins/default/filetype/jpg.gif)
此主题相关图片如下:无标题.jpg
![dvubb 图片点击可在新窗口打开查看](UploadFile/2014-8/201482117395537974.jpg)
说明:
如图所示
1、金额是表达式列,由单价*数量得出
2、付款是数值列,手动填入,意思是已实际发生的付款金额。
3、账期是日期列,比如2014年8月21日采购的物资,账期为2014年9月21日,意思是下月21日付款。
4、所用公式:应付=SUM(金额),已付=SUM(付款),未付=应付-已付,所用公式中金额、付款均作为列存在于表中,未付需用公式计算得出。
目的:生成每个供应商按月统计应付、已付、未付的数据,要求将应付、已付、未付作为标题列在月份的下面,像多表头一样。
看了帮助,还是没做成,特请帮助。