以文本方式查看主题 - 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=40840) |
||||
-- 作者:pfj511 -- 发布时间:2013/10/1 16:42:00 -- [求助] 如何以带有宏得EXCEL为模板制作报表?[已解决] 今天试了下? 不带宏得话,可以正常打开 ,加上 自运行宏 auto_open() 就打不开了 提示 EXCEL crush 错误
如何 解决这一问题,大侠们提供个思路,(以前宏得作用是,自动计算修约,自动合并单元格,自动设置打印区域,自动随机数) [此贴子已经被作者于2013-10-2 21:31:03编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2013/10/1 16:52:00 -- 没试过有宏的情况,机子上暂无excel可操作。
在模板上,如果宏是不需要的,就不要加入……上传一个有宏的excel模板看看。 |
||||
-- 作者:pfj511 -- 发布时间:2013/10/1 17:03:00 -- 测试下这个 ! 学习文件里面的 XLS我改了下
刚才 我 测试了下 可 以正常打开报表,,但是 新生成的 出库单报表文件 已经没有宏了 所以无法运行设定好的宏命令!
[此贴子已经被作者于2013-10-1 17:08:58编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2013/10/1 17:09:00 -- 我测试了上面的那个出库单.xls,可以导入,可以合并,也可以作为excel模板使用。 |
||||
-- 作者:pfj511 -- 发布时间:2013/10/1 17:10:00 -- 模板文件有宏 ,新导出的就没有了 你仔细看下! [此贴子已经被作者于2013-10-1 17:10:01编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2013/10/1 17:14:00 -- 导出的时候,是会忽略宏的,我没有安装excel,无法测试是否有宏。
如果你果真要宏,可以变通一下。就是不使用模板生成,你直接打开有宏的excel,往里面填值。
http://www.foxtable.com/help/topics/1144.htm http://www.foxtable.com/help/topics/1148.htm |
||||
-- 作者:pfj511 -- 发布时间:2013/10/1 17:22:00 -- 直接填数据 我测试过了 代码执行效率有点慢 打开文件 () -> 填数据 ->保存文件 > 打开文件(二次打开才运行宏)
总感觉 打开 很慢 起码2秒 才能打开 预览!
代码如下
FileSys.CopyFile(ProjectPath & "Reports\\" & Tables("主界面_table1").current("样品名称") & ".xls",ProjectPath & "temp\\" & Tables("主界面_table1").current("自动编号") & ".xls",True) Ws.Range("L6").value = Tables("主界面_table1").Current("录入日期") App.Quit
但是PrintPreview 方式打开的话 依然不能 运行宏,只有 Dim Proc As New Process \'定义一个新的Process 才能运行宏,但是不晓得怎么预览
估计要用这个方法才行
http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=5152&authorid=120
foxls.mExcel.openxls("D:/abc.xls")
[此贴子已经被作者于2013-10-1 17:31:10编辑过]
|
||||
-- 作者:pfj511 -- 发布时间:2013/10/2 21:31:00 -- 找到问题所在了,是EXCEL本身的问题,因为公式太多数据量庞大的话,每次填充数据会引起自动重算,这样非常影响整体执行效率,改为保存时重算,就可以了! |