以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 我做EXCEL报表的一点体会 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=2407) |
||||
-- 作者:yangming -- 发布时间:2009/4/12 12:02:00 -- 我做EXCEL报表的一点体会 我做EXCEL报表的一点体会:
专业报表我也做了二张,一张是当月工资报表,一张是工资条,其它的报表我全是用EXCEL做了,由于对代码不是很熟悉,所以,我感觉用EXCEL更爽手多了,加上用EXCEL都十多年了,可以称的上是熟手了吧,再有就是用EXCEL非常直观,其好处就不用我多说了。 我想说的是,我使用EXCEL做报表的体会: 一、 如何更方便快捷? 1、先将狐表文件导出为EXCEL表,这样,我们就能快速的得到一张EXCEL表了,然后打开此表,删除其中的数据,只留下一行列标题,以我的一张报银行表为例,看下图: 选中第一行,然后将鼠标放在实发工资的右下角,按右键,这时我们就会看到一个实心的“十”,向下拖动鼠标,就会将第一行的所有列的数据复制下来了,结果如下图: 2、对第二行各列分别加上方括号:如日期改为:[日期],这个只能是一个一个的加上了 3、其它的就按照帮助文件的做就可以。 二、 关于引用单元格的问题: 做报表的朋友都知道,如果很多报表标题上都会加入时间,如果是固定的时间,那每个月做之前都要改标题,很麻烦,如何才能一劳永逸呢,我下面就是介绍这样的方法的。请看下图: 如果不看地址栏,不看到公式,我们以为表的标题就是自己输入的,其实这里引用了单元格的公式。 下面我就来说说具体的操作过程吧。 1、打开我隐藏的A列,将光标移到A1: 我们看到A1列的公式“=TODAY()”,这里要注意,A1单元格的格式要设置为日期型。 2、在表格的G2列设置公式为“=YEAR(A1)” 4、在表格的H2列设置公式为“=MONTH(A1)” 5、将上述三个单元格的字体颜色全改成白色,目的很清楚了,就是打印时别让人看见啊,呵呵。 6、最后一步,就是在标题所处的单元格放一公式:=CONCATENATE(G2,"年",H2,"月","报银行表"),还可以对标题进行字体、字号、颜色、加粗等处理。 看看打印的效果: 可能有朋友要问了,那为何不能直接输入公式:=YEAR(TODAY()),而要多费个周折呢,这个问题你自己实践一下就会明白了,呵呵。 注意事项: 1、在单元格输入公式后,一定要点回车键,不要直接用鼠标移动。 2、A1单元格的格式要设置为日期型。图片很多,直接贴不上来,我将本文及图片做为附件上传吧
还有一点要注意的是:引用的年和月的单元格必须是常规或是文本格式. 另外,如果是上一个月,那就将A1单元格的公式改成:“=TODAY()-28”,,这里的28就是天数,一年中二月份最少的天数是28天,所以放28不会有问题,当然,前提是标题中只是放年和月的. [此贴子已经被作者于2009-4-12 13:21:39编辑过]
|
||||
-- 作者:程兴刚 -- 发布时间:2009/4/12 12:35:00 -- 谢谢分享,还不顶等啥时候! |
||||
-- 作者:易服 -- 发布时间:2009/4/12 13:12:00 -- 学习 |
||||
-- 作者:yangming -- 发布时间:2009/4/12 13:22:00 -- 还有一点要注意的是:引用的年和月的单元格必须是常规或是文本格式. 另外,如果是上一个月,那就将A1单元格的公式改成:“=TODAY()-28”,,这里的28就是天数,一年中二月份最少的天数是28天,所以放28不会有问题,当然,前提是标题中只是放年和月的. 已将此贴内容放到一楼了, |
||||
-- 作者:gdlgh -- 发布时间:2009/4/12 15:19:00 -- 大姐有心人,要顶! |
||||
-- 作者:狐狸爸爸 -- 发布时间:2009/4/13 7:59:00 -- 我顶。 |
||||
-- 作者:t_fs -- 发布时间:2009/4/13 16:12:00 -- 以下是引用yangming在2009-4-12 13:22:00的发言:
还有一点要注意的是:引用的年和月的单元格必须是常规或是文本格式. 另外,如果是上一个月,那就将A1单元格的公式改成:“=TODAY()-28”,,这里的28就是天数,一年中二月份最少的天数是28天,所以放28不会有问题,当然,前提是标题中只是放年和月的. 已将此贴内容放到一楼了,
|
||||
-- 作者:don -- 发布时间:2009/4/13 16:18:00 -- 以下是引用t_fs在2009-4-13 16:12:00的发言:
一开始就能够! 一,引用全局变量 可以在Excel报表中引用全局变量,格式为: [!全局变量名称] 全局变量可以参与表达式计算,例如: {"起始日期:" & [!起始日期]} 二,使用标记 利用Marks集合,我们可以在报表模板中插入标记,然后在生成报表的时候,将标记替换为真正的值。 在Excel报表模板中插入一个标记的格式为: <标记名称> 示例 假定报表中某个位置需要打印出当前登录用户的名称,我们可以在设计报表的时候,在该处插入标记: <用户名> 标记的名称可以根据需要取。 然后在生成报表之前,利用Marks集合,将标记替换为真正的用户: Dim Book As New XLS.Book("c:\\book5.xls")Book.Marks.Add("用户名",User.Name) Book.Build() Book.Save("c:\\reports\\test.xls") Dim Proc As New Process Proc.File = "c:\\reports\\test.xls" Proc.Start() |
||||
-- 作者:czy -- 发布时间:2009/4/13 16:19:00 -- 我也顶。 |
||||
-- 作者:t_fs -- 发布时间:2009/4/13 16:38:00 -- 能够就好,谢谢了 |