如何用Excel控件制作简单报表
发布时间:2022-09-22 19:19:45
①报表的概念
这张报表包含了报表的基本元素,即页眉、页脚、横表头、竖表头、表头交叉区、单元格。
页 眉:位于报表的最上部分。作为报表的描述性信息,概括性的说明报表的名称、表号、批准机关、批准文号等。
页 脚:位于报表的最下部分,用于说明报表的其它信息,例如:单位负责人、部门负责人、制表人等信息。
横表头:也叫宾栏,位于报表的横方向的表头,它是统计的约束条件,也可能是描述信息。对于统计表来说横表头是可以分层的,并且上层的条件对它下面各层都起作用。
竖表头:也叫甲栏,报表竖方向的表头,它在统计表中与横表头起相同的作用,也是统计的约束性条件,也可能是描述性信息。在分层结构中,上层的条件对它下面各层都起作用。
表头交叉区:在报表的左上角,可以分栏说明报表的横表头和竖表头。
单元格:报表的主体部分。在统计报表中是其相对应横表头和竖表头的两个条件的统计情况,在查询表中是横表头的查询信息,也可能是简单的计算统计结果。单元格内容在新建报表后是空的,要通过统计查询这一步来填充,在填充后也可以修改。
②Visual Basic中制作报表
Visual Basic中制作报表,通常是用数据环境设计器(Data Environment Designer)与数据报表设计器(Data Report Designer),或者使用第三方产品(如非常有名的Crystal Report)来完成并通过ActiveX控件输出。但对于大多数程序员来说,设计报表往往他们费尽心思。然而,我们可以有更简单的方法来满足他们的要求。由于Visual Basic的可扩展性,使用和融入Office2000的特性,包括Excel是相当方便的。Excel可以用作OLE服务器,向外部输出某些属性,方法和事件.Visual Basic可以利用这些功能,实现与Excel的集成。下面,我们来具体阐述一个用VB来创建Excel报表的例子。
③Excel对象
微软的Excel对象模型包括了128个不同的对象,从矩形,文本框等简单的对象到透视表,图表等复杂的对象.下面我们简单介绍一下其中最重要,也是用得最多的四个对象.
A、Application对象
Application对象处于Excel对象层次结构的顶层,表示Excel自身的运行环境.
B、Workbook对象
Workbook对象直接地处于Application对象的下层,表示一个Excel工作薄文件.
C、Worksheet对象
Worksheet对象包含于Workbook对象,表示一个Excel工作表.
D、Range对象
Range对象包含于Worksheet对象,表示Excel工作表中的一个或多个单元格.
④Access2000的报表解决方案
A、在Excel中做一个模板
在用Visual Basic生成Excel报表之前,应先按照用户的要求在Excel中做好一个模板,包括页眉,页脚,表头等等。
B、在VB中创建Excel对象,打开Excel文件
和其它的第三方控件一样,使用之前必须引用或作为部件导入。要在VB中创建和作用Excel对象,就必须先引用Microsoft Excel 9.0 object library。然后我们就可以在VB的编程操作Excel对象了。
关键代码入下:
Dim excelFile As String
excelFile = App.Path & "myReport.xls" 'Excel文件名
'定义Excel的Application对象,Application对象相当于Excel程序
Dim xlApp As Excel.Application
'定义Excel的Workbook对象,Workbook对象相当于Excel文件
Dim xlbook As Excel.Workbook
'定义Excel的Worksheet对象,Worksheet对象相当于Excel文件中的一个表
Dim xlsheet As Excel.Worksheet
'给Application分配内存空间,将其实例化
Set xlApp = New Excel.Application
'创建Application对象
Set xlApp = CreateObject("Excel.Application")
'隐藏被VB打开的Excel程序
xlApp.Visible = False
'打开工作簿,excelFile为一个EXCEL报表文件
Set xlbook = xlApp.Workbooks.Open(excelFile)
'打开Excel工作表
Set xlsheet = xlbook.Worksheets(1)
C、控制Excel工作表,对其进行编辑
如果是通过ADO打开了一个记录集,想把记录集中的数据显示在单元格中,关键代码为:
Do Until rs.EOF
For i = 0 To rs.Fields.Count - 1
xlsheet.Cells(j + 1, i + 1) = rs.Fields(i)
Next
rs.MoveNext
j = j + 1
Loop


猜你喜欢
- wps演示中存在多种幻灯片视图,我们可以根据自己的需要来对其进行切换,下面就让小编告诉大家在wps演示中如何切换幻灯片视图。在wps演示中切
- Word2016文档中,在插入的图片上怎么写字?在编辑文档的时候,有时需要在插入的图片上输入文字信息。那么,在Word2016文档中应该怎么
- widow自启动执行的任务计划是日常工作中很常见的设置,那么Win7如何设置计划任务?下面小编就给大家带来Win7设置计划任务的方法,希望可
- edge浏览器不能登陆个人网银怎么办?很多朋友使用edge浏览器登录网银网站的时候会遇到一些问题,而且这个问题是很常见的,不少用户都在问,今
- 小爱音箱怎么连接电脑外放?小爱音箱大部分的用户都是通过手机平板来进行连接的,因此很多的网游都不会通过电脑连接,为了方便所有人,我们带来了教程
- ppt2016怎么制作椭圆形文本框?ppt中可以插入很多形状的文本框,该怎么插入椭圆形的文本框呢?下面我们就来看看详细的教程,需要的朋友可以
- excel单元格行高怎么设置?如图一张表,全选,全选的快捷键是Ctrl+A。全选之后第一种方法是直接用鼠标放到最前面的竖栏上,放在数据与数据
- 如果某列中有非常多的数值,用MAX函数可以找出其中的最大者,如果要找出最大值所在单元格地址,可以用下面的几个公式,可以返回A列中第一个最大值
- 下面是让页眉第一页不显示的方法:1、双击页眉进入编辑页眉界面,然后点击【插入】项中的【页眉】选项,在【页眉】下拉栏中选择【编辑页眉】2、进入
- Win10系统是现在大家都在使用的电脑操作系统,最近有用户反映自己的win10任务栏全屏的时候不消失,也不会自动隐藏了,这无疑会给我的视觉带
- 很多win10用户都已收到微软推送的Win10 PC红石2预览版14905,新版系统不仅修复了一系列Bug,但在升级成功后发现Windows
- 目前微软在Windows 10中新加入了一些功能,比如说开始菜单中的应用推荐项目。然而有些用户对于微软此举并不待见,因为他们认为“我的地盘我
- 驱动人生都有哪些功能?驱动人生支持所有品牌设备识别和驱动,界面清晰、操作简单,驱动人生都有哪些功能呢,下面就给大家分享一下。1、运行驱动人生
- 用户在使用win10的时候发现老是会自动弹出反馈中心,这可怎么办?但是其实自动弹出反馈中心是可以关闭的,有需要的朋友可以跟着小编接下去看看怎
- 电脑重装XP系统后出现无法打开磁盘管理怎么办?WinXP系统电脑打不开磁盘管理界面该如何解决?请看下文具体介绍。解决方法:1、我们找xp系统
- 1.开始——程序——microsoft office——microsoft office 2010 工具——microsoft 剪辑管理器。
- Win10/win8/Win8.1桌面图标之间的默认间距怎么调整?相信很多朋友都知道,自从win8系统之后,通过高级外观设置来调整桌面图标之
- 安装vs6.0,理论上在安装文件夹下,选择setup.exe,然后一路next就可以了,不过还是有些细节是需要注意的,感兴趣的朋友可以了解下
- 很多老用户对于Windows XP的文件资源管理器中的“移动到/复制到”功能十分怀念,因为它可以更方便地执行移动和复制操作,该功能一直保留到
- Excel中经常需要使用到数据升序排序的技巧,数据具体该如何进行升序排序呢?下面是由小编分享的excel表格数据升序的教程,以供大家阅读和学