以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- EXCEL报表的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=71183) |
-- 作者:supwork -- 发布时间:2015/7/6 20:19:00 -- EXCEL报表的问题 EXCEL报表的合计功能 官方演示的数量,金额统计均是引用数据表中的数据实体字段
但一个高效的设计 里一般金额多用的是:表达式列
而官方在EXCEL报表引用数据不能是表达式列
那么在数据表中金额是表达式列时,如何在打印输出模板上统计金额的合计值呢
明细行中求金额:<iif([数量]*[市场价]>0,[数量]*[市场价],"")> 用此公式搞定
金额合计列 =SUM(INDIRECT("H7:H"&ROW()-1)) 用此公式,生成报表时显示#VALUE人工双击一下单元格时统计值能出来(但这种方式求的和要求H列不得有其它数字及日期出现)
问这种状况下如何求金额合计值。 |
-- 作者:大红袍 -- 发布时间:2015/7/6 20:57:00 -- 呃,excel报表谁说不能引用表达式列? |
-- 作者:大红袍 -- 发布时间:2015/7/6 21:00:00 -- 你可以在foxtable里面加入一列金额列来处理。 |
-- 作者:supwork -- 发布时间:2015/7/7 10:00:00 -- 谢谢问题基本解决了,但有个小问题不好解决。
个别列内容可能比较长,比如 规格 列,不管你单元格设置多宽,内容总有不能全部显示的
在EXCEL中设置了自动换行。换行是生效了,但不能自动行高,如何处理。 |
-- 作者:大红袍 -- 发布时间:2015/7/7 10:03:00 -- 不合并单元格自动行高
Dim App As New MSExcel.Application
|
-- 作者:supwork -- 发布时间:2015/7/7 10:24:00 -- 我想在报表事件中的After build中
Dim myExcel As MsExcel.Application = Getobject(,"Excel.Application") 但运行不正常,请修正 目的是要对生成的报表的C列进行自动 行高 [此贴子已经被作者于2015/7/7 10:29:33编辑过]
|
-- 作者:大红袍 -- 发布时间:2015/7/7 10:39:00 -- Select e.Book.TempLate Case "采购订单打印模板" Dim App As New MSExcel.Application Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(ProjectPath & "Report/采购订单打印模板.xls") Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1) Dim Rg As MSExcel.Range = Ws.Cells \'Rg.EntireColumn.AutoFit \'自动调整列宽 Rg.EntireRow.AutoFit \'自动调整行高 \'Rg.WrapText = True \'App.Visible = True wb.Save app.Quit End Select |
-- 作者:supwork -- 发布时间:2015/7/7 12:15:00 -- EXCEL报表模板里面,关于打印的设置比如页眉页脚设置都能生效
唯独 关于标题行等有关工作表的设置不生效,被清空了
那么FT如何通过命令行设置 打印时的标题行了呢 |
-- 作者:supwork -- 发布时间:2015/7/7 12:49:00 -- 以下是引用大红袍在2015/7/7 10:39:00的发言:
Select e.Book.TempLate Case "采购订单打印模板" Dim App As New MSExcel.Application Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(ProjectPath & "Report/采购订单打印模板.xls") Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1) Dim Rg As MSExcel.Range = Ws.Cells \'Rg.EntireColumn.AutoFit \'自动调整列宽 Rg.EntireRow.AutoFit \'自动调整行高 \'Rg.WrapText = True \'App.Visible = True wb.Save app.Quit End Select 这段代码 要放报表事件哪里 我放在After Build中 系统提示找不到文件,说明此时该文件还未生成
|
-- 作者:大红袍 -- 发布时间:2015/7/7 15:03:00 -- 以下是引用supwork在2015/7/7 12:49:00的发言:
这段代码 要放报表事件哪里 我放在After Build中 系统提示找不到文件,说明此时该文件还未生成
所以,不能用报表事件来做。要单独弄一个按钮。 |