以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]基于数据表的统计表能设置模板吗 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=113837) |
-- 作者:chnfo -- 发布时间:2018/1/23 23:01:00 -- [求助]基于数据表的统计表能设置模板吗 帮助里的“交叉统计”这一节中,可以形成以客户行分组的统计表,列是商品。 问题: 1、是否可以为这种列不确定有多少(因为商品可能有5种,也可能有100种)的统计表设置报表模板? 2、如果可以,该如何做呢? 3、如果不行,那就只有用专业报表了。
|
-- 作者:有点蓝 -- 发布时间:2018/1/23 23:17:00 -- 截图看看表结构、数据,以及需要实现的最终报表效果 |
-- 作者:chnfo -- 发布时间:2018/1/23 23:31:00 -- 就是下图这样的。这是交叉查询出来的报表。最终生成的报表也就是加上表头、最底下加上一个合计。 但这个查询表有几点要注意: 1、行是不固定的,因为供应商品的客户、个数都不同。比如上个月是甲乙丙丁4个,这个月可能是甲乙丙丁戊5个 2、列也是不固定的,因为供应的商品上个月可能有ABC三种商品,这个月可能会有ABCDE五种商品。 最终的报表想当于要直接导出下图这样的样子,但需要加表头之类。例如加上报表的名称、单位、报表日期等等 结果是这样的,倒是不复杂 [此贴子已经被作者于2018/1/23 23:50:15编辑过]
|
-- 作者:有点蓝 -- 发布时间:2018/1/24 8:47:00 -- 这种就不能用模板了,你直接导出来吧:http://www.foxtable.com/webhelp/scr/0179.htm |
-- 作者:有点甜 -- 发布时间:2018/1/24 9:04:00 -- 方法一:直接saveexcel,然后打开xls,插入行加上表头;
方法 二:用vba,修改模板,把动态部分的列,拷贝插入到多列去。 |
-- 作者:chnfo -- 发布时间:2018/1/24 21:31:00 -- 方法一,这个我自己用可以,给客户用就不好了。 方法二,模板如何定义呢?又怎么改模板。有没有示例参考哦
|
-- 作者:有点甜 -- 发布时间:2018/1/24 21:37:00 -- 建议还是用方法一。
你让用户自己做一个模板,只需要做表头。然后把表内容saveexcel导出,然后你把表内容拷贝到模板那里去。
或者是,你直接在模板那里,导出表内容 http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=103833&skin=0
|
-- 作者:chnfo -- 发布时间:2018/1/24 21:56:00 -- 这个模板恐怕没法定义哟,因为列是动态的。比如这个月只有ABC三种商品,那么就只需要显示ABC的数量和金额这6列。下个月可能会有ABCDE五种商品,那就要显示10列了。 |
-- 作者:有点甜 -- 发布时间:2018/1/24 22:01:00 -- 以下是引用chnfo在2018/1/24 21:56:00的发言:
这个模板恐怕没法定义哟,因为列是动态的。比如这个月只有ABC三种商品,那么就只需要显示ABC的数量和金额这6列。下个月可能会有ABCDE五种商品,那就要显示10列了。
方法一:模板只需要定义最上面的表信息那些东西。下面的内容你用代码生成。
如果用方法二:那就动态插入列,设置一列动态列的样式,然后vba打开,拷贝,你表格由多少列,就拷贝多少次。 |
-- 作者:chnfo -- 发布时间:2018/1/24 22:10:00 -- 因为表名称是最头上的嘛,它是要横贯所有的数据的列的。因为列是动态的,模板如何处理它要合并多少列呢? 如果加上供应商这一列,这个月有3种商品,那总列数就应当是7列;某个月有5种商品,那就是7*2+1=15列 是不要还要用代码处理表名的合并列呢 如果只是显示数据倒是简单,现在这个是有点小难受的
[此贴子已经被作者于2018/1/24 22:10:59编辑过]
|