以文本方式查看主题 - 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=24074) |
-- 作者:zxy_jedi -- 发布时间:2012/9/28 19:44:00 -- 在EXCEL报表中直接引用行号 问一下,在EXCEL报表中想在“序号”列中直接引用表中的行号,我已经使用了“引用顺序号”<Index>,但是有时不想从1开始填入,想着能不能直接引用选定打印行的行号,不知道该怎么弄了。 |
-- 作者:狐狸爸爸 -- 发布时间:2012/9/28 20:00:00 -- 没有办法 |
-- 作者:lin_hailun -- 发布时间:2012/9/29 8:58:00 -- 可以通过代码完成,把模板里的<Index>替换成行号。 涉及知识点 http://www.foxtable.com/help/topics/1953.htm http://www.foxtable.com/help/topics/1955.htm [此贴子已经被作者于2012-9-29 8:58:14编辑过]
|
-- 作者:zxy_jedi -- 发布时间:2012/9/29 11:05:00 -- 没看明白,求具体操作 |
-- 作者:lin_hailun -- 发布时间:2012/9/29 11:13:00 -- 你尝试在报表事件BuildDetail写一句 e.Book.Marks("Index") = 12345 那么,模板里<Index>的值就会变成你输入的值。 |
-- 作者:zxy_jedi -- 发布时间:2012/9/29 11:43:00 -- 在生成多个细节区时怎么能将输入的数值向下继续写入,例如5,6,7,8..... |
-- 作者:狐狸爸爸 -- 发布时间:2012/9/29 12:05:00 -- Static i As integer i = i + 1 e.Book.Marks("Index") = Tables("xxx").current.Index + i |
-- 作者:zxy_jedi -- 发布时间:2012/9/29 15:23:00 -- 以下是引用狐狸爸爸在2012-9-29 12:05:00的发言:
Static i As integer i = i + 1 e.Book.Marks("Index") = Tables("xxx").current.Index + i 在报表事件BuildDetail中使用了以上代码后的确出现了想要的结果,但是当再次打印报表时序号出现了以上次打印报表的结尾行号+1做为开始 的现象,只能重启程序或是重新点一下事件按钮才行,不知道怎么能解决。 |
-- 作者:lin_hailun -- 发布时间:2012/9/29 15:27:00 -- 嗯嗯,是的 static 变量是一直存储着的。 你定义 全局变量 ,然后编写报表事件BefortBuilder,把变量设置为初始值。 http://www.foxtable.com/help/topics/1450.htm |
-- 作者:zxy_jedi -- 发布时间:2012/9/29 15:45:00 -- 以下是引用lin_hailun在2012-9-29 15:27:00的发言: 嗯嗯,是的 static 变量是一直存储着的。 你定义 全局变量 ,然后编写报表事件BefortBuilder,把变量设置为初始值。 http://www.foxtable.com/help/topics/1450.htm 还不会全局变量......怎么弄?
|