新疆农业大学
专业文献综述
题 目:VB中Excel报表的设计与实现
姓 名:周维红
学 院:计算机信息与工程学院
专 业:电子信息工程与技术
班 级:电科052
学 号:0546332563
指导教师:张胜光 职称:副教授
2008年5月21日
新疆农业大学教务处制
VB中Excel报表的设计与实现文献综述
作者:周维红 指导教师:张胜光
摘要:论述了VB程序设计语言与Excel软件相结合,成功地解决VB在数据处理及自动绘图方面编程难度大、开发效率低的难题。而且还调出Excel自动生成的图表并显示在VB的表单中。应用VB与Excel相结合处理大批量图表数据,其优点更为显著。可大大的提高工作效率。
关键词:VB EXCEL 数据处理
引言:VB是常用的应用软件开发工具之一,由于VB的报表功能有限,而且一但报表格式发生变化,就得相应修改程序,给应用软件的维护工作带来极大的不便。因此有很多程序员现在已经充分利用EXECL的强大报表功能来实现报表功能。但由于VB与EXCEL又分别属于不同的应用系统,如何把它们有机地结合在一起,是一个值得我们研究的课题。本章就如何设计和实现VB中EXECL报表进行详细深入的讨论。
1. VB的概念
Visual Basic(简称VB)是常用的应用软件开发工具之一,VB以其简单易学、效率高,图形界面丰富等特点受到了不少编程人员的喜爱.在用VB开发实际工程软件时,我们常发现VB在数据处理及制作报表方面不方便,编程难度大且开发效率不高等难点.但在VB 中用数据处理控件(如:MicrosoftDateGrid Control 6.0(OLEDB)、Microsoft DateList Control 6.O(OLEDB)、Microsoft FlexGrid Control 6.0等)处理数据和制作图表时,所提供的图表格式难以修改,功能非常有限,后序操作性也很差,往往不能满足设计人员要求,给应用软件的维护带来极大的不便.因此,拓展VB在编写数据处理及制作EXCEL表格方面的应用软件具有重大的意义。
2. Excel的概念
Excel集表格、函数、数据库和图文信息于一体,是一个强有力的信息分析和处理工具.Excel是办公自动化常用软件之一,一般的用户对它都比较熟悉.如果能在VB开发的应用程序中,使其具有Excel的界面和功能,这样用户使用起来将更为方便、得心应手.VB与Excel有机地结合在一起,在VB中利用Excel的强大数据处理和制作表格功能来实现图表的设计及打印,必将解决实际工作中遇到的一系列问题。
本文正是基于此,尝试将VB和Excel结合起来,实现VB内部调用Excel进行数据处理及制作报表功能,然后,再用VB调出Excel自动生成的图表并显示在VB的表单中.
3设计思路与步骤
广东省公路勘察规划设计院阳德胜说:我们的目的是使用VB 编程把Access 数据库中的数据传送到Excel中,从而完成报表的制作。首先引用Excel 类型库, 建立对象实例, 使用操作Excel 的命令把数据库Access 中的数据导入Excel对象实例中, 编程控制Excel 报表的浏览打印。
3.1 建立EXCEL 对象模型实例
山东水利职业学院单振清宋雪臣认为:和本设计题目有关的Excel 对象模型的对象有: Application 对象、Workbook 对象、Worksheet 对象、Range 对象和Cells对象。Application 象: Excel 对象模型的顶层,表示整个Excel 应用程序;Workbook 对象: 代表Excel 应用程序中当前打开的一个工作簿;Worksheet 对象:表示Excel 的一个工作表; Range 对象: 表示工作表的某一个单元格或多个单元格; Cells 对象: 表示工作表的一个单元格。
3.2 利用VB程序控制Excel制表
打开Excel,选择“工具\宏(M)\录制新宏(R)”,按常规方法制表,再选择“停止录制”,然后对所录制的内容进行分析,就可以获得绘制各种Excel表格的方法和命令,将录制的内容复制插入VB程序中,在执行程序的过程中,将自动生成所设计的Excel表格。
4 VB与Excel链接
广东省公路勘察规划设计院阳德胜经过实践得出VB与Excel的链接步骤和常用命令如下:
(1)打开VB6.0,进入VB程序设计界面,从下拉菜单“工程”中选择“引用”,进一步选择“Microsoft Ex—cel 9.0 Object Library”,再选择“确定”,表示在工程中要引用Excel类型库。
(2)在通用对象的声明过程中定义Excel对象:
Dim excell As Exce1.Application
Dim excell Book As Exce1.WorkBook
Dim excell Sheet As Exce1.Worksheet
(3)创建Excel对象
SET excell=CreateObject(“Exce1.Application”)
(4)建立一个新Excel工作簿文件
Set excellBook=excel1.Workbooks().AddexcellBook.SaveAs[路径]\“文件名”
(5)打开一个旧Excel工作簿文件
Set excell Book=excel1.Workbooks.Open([路径]\“文件
名”)
(6)设置Excel对象可见(或不可见)
excel1.Visible=True(False)
(7)增加Excel工作表,并命名
Sheets.Add
Set excellSheet=excellBook.Worksheets(”sheet n”)
Sheets(”Sheet n”).Select
Sheets(”Sheet n”).Name=”工作表名”(n表示第n个工作表)
(8)设置Excel工作表
Set excellSheet=excellBook.Worksheets(”工作表名”)
(9)给工作表单元格(row,co1)赋值
excellSheet.Cells(row,co1)=值或算式
(10)读工作表单元格(row,co1)的值
Sheets(”工作表名”).Select
X=excellSheet.Cells(rOW,co1)
(11)保存Excel工作簿
ActiveWorkbook.Save
(12)退出Excel
excel1.Quit
(13)交还控制权给Excel
set excell=nothing
5 报表输出实例
下面结合项目开发实例《学生成绩管理系统》介绍有关动态报表的制作过程。通过主界面的“报表”菜单项进入打印界面, 添加一个列表框, 用来存放所有的数据表和查询。从列表框选择一个表或者查询, 并在文本框输入报表题目, 回车后, 即可预览或打印( 见下图)
在工程中引用Microsoft Excel 9.0 ObjectLibrary, 以便使用Excel 模型; 引用MicrosoftActiveX Data Objects 2.5 Library, 以便使用ADO 编程模型。在与应用程序相同的路径下有Access 数xsxx.mdb, 其中有学生档案表及学生成绩表。由于在程序中使用语句来设Excel 的格式比较麻烦, 我们先制作一个模板文件Nomalxs.xls, 对部分较复杂的格式设置好: 设置好字体、水平垂直居中对齐和行高等, 内容为空, 存放位置与工程在相同的目录下。
结语
在VB 中结合Excel 进行复杂报表的设计,可以减轻报表设计的工作量,提高报表的灵活性。利用VB编程控制Excel处理测量数据的应用面很宽,在实际工作中为处理大量的测量数据带来极大方便,具备VB编程能力的测绘工作者,只要再多了解一些OLE自动化技术,就可以实现VB与Excel的完美结合。起初我对这个设计也很迷茫,经过老师的指引我才有了方向,并对文献综述有了很深的了解,增添了很多知识,我想这在下次的毕业设计中对我会有更大的帮助。我将会继续努力把所学知识用于实践。
参考文献:
1 阳德胜 利用VB编程控制Excel处理测量数据[J]广东:广东省公路勘察规划设计院2007(04)
2 李斌华,刁明军,文俊,方旭东 VB结合Excel进行数据处理和绘图的工程应用[J]2007
3 欧阳峥峥等著.数据库应用技术一VisualBasic及其应用系统开发[M】.北京:中国水利水电出版社。2005.1
4 单振清宋雪臣 基于VB的EXCEL动态报表技术[J] 山东:山东水利职业学院。2008
联系客服