如何用Excel控件制作简单报表

   ①报表的概念

  这张报表包含了报表的基本元素,即页眉、页脚、横表头、竖表头、表头交叉区、单元格。

  页 眉:位于报表的最上部分。作为报表的描述性信息,概括性的说明报表的名称、表号、批准机关、批准文号等。

  页 脚:位于报表的最下部分,用于说明报表的其它信息,例如:单位负责人、部门负责人、制表人等信息。

  横表头:也叫宾栏,位于报表的横方向的表头,它是统计的约束条件,也可能是描述信息。对于统计表来说横表头是可以分层的,并且上层的条件对它下面各层都起作用。

  竖表头:也叫甲栏,报表竖方向的表头,它在统计表中与横表头起相同的作用,也是统计的约束性条件,也可能是描述性信息。在分层结构中,上层的条件对它下面各层都起作用。

  表头交叉区:在报表的左上角,可以分栏说明报表的横表头和竖表头。

  单元格:报表的主体部分。在统计报表中是其相对应横表头和竖表头的两个条件的统计情况,在查询表中是横表头的查询信息,也可能是简单的计算统计结果。单元格内容在新建报表后是空的,要通过统计查询这一步来填充,在填充后也可以修改。

  ②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

时间: 2024-08-02 13:48:35

如何用Excel控件制作简单报表的相关文章

求助!如何用winform控件制作不规则报表?求大神来指导

问题描述 需求如图,由于客户之前用的是Excel来记录保养人签名的,这样的格式无疑很科学和直观,可是现在用了系统之后,报表想做到这样,似乎比较困难,求教大神指导一下用什么样的报表控件能把每个设备的不规则样式做出来? 解决方案 解决方案二:http://bbs.csdn.net/topics/390939832最近一直有工作忙,还在升级.完成你这个是没有啥问题的.解决方案三:引用1楼zanfeng的回复: http://bbs.csdn.net/topics/390939832最近一直有工作忙,还

wpf日历控件制作过程分析(2) 自定义样式属性

接上篇wpf日历控件制作过程分析(1) 定义header 在header中,我们看到了定义一个自定义样式TitleStyle 1.自定义样式 看后台代码定义 Code /**//// <summary> /// The DependencyProperty for the TitleStyle property. /// Flags: none /// Default Value: null /// </summary> public static readonly Depende

asp.net 控件制作下拉导航菜单

asp教程.net 控件制作下拉导航菜单 今天的一个小测试是老师让用.NET用控件来制作一个拉菜单要求如下: 将鼠标移到父菜单上弹出3个子菜单,而且每个子菜单都有超链接. 以下是我自己做的代码: <asp:Menu ID="Menu1" runat="server" Orientation="Horizontal" Width="100%"         Font-Size="14px" ForeC

自己动手写的jquery分页控件(非常简单实用)_jquery

最近接了一个项目,其中有需求要用到jquery分页控件,上网也找到了需要分页控件,各种写法各种用法,都是很复杂,最终决定自己动手写一个jquery分页控件,全当是练练手了.写的不好,还请见谅,本分页控件在chrome测试过,其他的兼容性不知道怎么没时间测试呢.欢迎有同样需求的小伙伴采用,在使用过程发现有问题欢迎提出批评建议.   css: @charset "utf-"; * { margin:px; padding:px; font-family:"微软雅黑";

BCB控件制作和消息处理

1 前言 作为和delphi类似的rad(rapid application development)工具,c++ builder的强大功能不仅体现在数据库开发方面,也凸现于应用程序开发上(令人称绝的是这两方面结合得非常好).仅就应用程序而言,要真正体现c++ builder的优势,开发出高质量的软件,则在拖拉拽放之外,尚需用到一些进阶技术.如消息处理.dll.ole.线程.sdk编程.c++ builder在这些方面都或多或少有独到的优势.此外,可以方便地制作自定义控件,也是c++ build

js判断页面中是否有指定控件的简单实例

本篇文章主要是对js判断页面中是否有指定控件的简单实例进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 if (document.getElementById('show_pic')!=null){document.getElementById('show_pic').src=this.value;} show_pic是页面中的一个图片控件,我们首先要保证这个控件存在于页面上,才能对其进行操作,不然JS就会出现错误,所以用这种方式进行了判断,我听网友说,JS中还有一个函数,可以判断对象是

如何用Activex控件实现文件自动上传下载

问题描述 如何用Activex控件实现文件自动上传下载 用户不需要选择本地文件,如何采用控件方式自动将指定目录中的一个活多个文件上传到服务中? 解决方案 Web文件批量上传控件-Xproer.HttpUploader http://www.cnblogs.com/xproer/archive/2010/10/24/1859895.html 解决方案二: HTTP文件上传控件是基于标准HTTP协议开发的轻量级ActiveX控件,可以非常方便的集成到您的网站或软件中,帮您轻松实现文件的上传功能. 与

基于JS分页控件实现简单美观仿淘宝分页按钮效果_javascript技巧

最新版本代码请移步到https://github.com/pgkk/kkpager 在线测试链接:http://pgkk.github.io/kkpager/example/pager_test.html 分页按钮思想: 1.少于9页,全部显示 2.大于9页,1.2页显示,中间页码当前页为中心,前后各留两个页码 附件中有完整例子的压缩包下载.已更新到最新版本 先看效果图: 01输入框焦点效果 02效果 模仿淘宝的分页按钮效果控件kkpager JS代码: Js代码 var kkpager = {

C/S模式开发中如何利用WebBrowser控件制作导航窗体

原文:C/S模式开发中如何利用WebBrowser控件制作导航窗体 转自: CSDN 相信不少同学们都做过MIS系统的开发,今天这里不讨论B/S模式开发的问题.来谈谈winform开发.用过市面上常见进销存系统的同学肯定知道,在进入系统之后一般在mdi窗体中系统自动打开一个导航子窗体.将一些常见的功能以非常直观的图形展示给用户.观察市面上的此类产品,该功能基本是所有mdi窗体开发的管理系统中必备的功能窗体.下面我们就来分析一下如何在.net中实现这个功能.幸好我上次做了一个类似的系统,里面也用到