资源预览内容
第1页 / 共14页
第2页 / 共14页
第3页 / 共14页
第4页 / 共14页
第5页 / 共14页
第6页 / 共14页
第7页 / 共14页
第8页 / 共14页
第9页 / 共14页
第10页 / 共14页
亲,该文档总共14页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第12章 数据的导入和报表输出,本章讲述的主要内容 12.1 Visual Studio与Excel电子表格 12.2 使用Excel输出报表实例,12.1 Visual Studio与Excel电子表格,12.1.1 操作Excel工作簿 1. 引用Excel类库 应使用下列语句在项目中添加对该命名空间的引用。 Imports Microsoft.Office.Interop.Excel,12.1 Visual Studio与Excel电子表格,12.1.1 操作Excel工作簿 2. 打开现有Excel文件 在Visual Studio中打开现有Excel文件的操作步骤如下。 1) 添加对Excel类库的引用。这一步是在Visual Studio中操作Excel文件的必须,今后不再赘述。 2) 声明一个ApplicationClass类对象。该类中包含有众多用于Excel文件操作的属性、方法和事件。如,打开、关闭、保存等。 3) 声明一个Workbook类对象,而后调用ApplicationClass的子类Workbooks的Open方法将打开的Excel工作簿赋值给Workbook对象。在使用Open方法时,需要为其指定15个参数,各参数的说明见教材表12-1。,12.1 Visual Studio与Excel电子表格,12.1.1 操作Excel工作簿 3. 保存或另存Excel文件 使用Workbook对象的Save方法或SaveAs方法可以保存或另存Excel文件。 Save方法不带任何参数,表示保存Workbook对象代表的文件,相当于在Excel环境中单击“保存”按钮或执行“文件”菜单下的“保存”命令。 SaveAs方法带有12个参数,各参数的说明见教材表12-2。,12.1 Visual Studio与Excel电子表格,12.1.1 操作Excel工作簿 4. 释放Excel对象 操作完毕后通常使用如下所示的代码释放Excel对象: ExcelApp.Quit():ExcelApp = Nothing:ExcelBook = Nothing ExcelSheet = Nothing 使用下列代码强制终止当前内存中存在的Excel进程。 Dim procs() As Process = process.GetProcessesByName(“Excel“) For Each pro As Process In procs pro.Kill() Next GC.Collect(),12.1 Visual Studio与Excel电子表格,12.1.2 操作Excel工作表 1. 指定要操作的工作表 指定要操作的工作表通常可以通过以下3种方式来实现: 操作当前工作表 Dim ExcelSheet As Worksheet =ExcelApp.ActiveSheet 操作Excel工作簿中的第1个工作表 Dim ExcelSheet As Worksheet = ExcelBook.Worksheets(1) 操作工作簿中名为“abc”的工作表 Dim ExcelSheet As Worksheet = ExcelBook.Worksheets(“abc“),12.1 Visual Studio与Excel电子表格,12.1.2 操作Excel工作表 2. 向工作表中写入数据 例如,下列代码将字符串“abc”写到当前工作表的D3单元格中: 创建Excel工作表对象 为工作表的第3行第4列单元格(D3)赋值 ExcelSheet.Cells(3, 4) = “abc“ 不显示保存文件提示信息框 ExcelApp.DisplayAlerts = False ExcelBook.Save() 保存工作簿 ExcelApp.Quit(),12.1 Visual Studio与Excel电子表格,12.1.2 操作Excel工作表 3. 向工作表中插入图片 使用Worksheet的子类Shapes的AddPicture方法可以向工作表的指定位置插入一个图片。AddPicture方法带有7个参数,各参数的含义说明见表12-2。,12.1 Visual Studio与Excel电子表格,12.1.2 操作Excel工作表 4. 读取工作表中的数据 读取单元格中数据时,首先应将目标单元格转换成一个Range类型的对象,而后使用该对象的Value2属性获取单元格的值。 例如,下列代码可将当前工作表D3单元格的值显示到标签控件Label1中: Dim ExcelSheet As Worksheet = ExcelApp.ActiveSheet Dim r As Range = ExcelSheet.Cells(3, 4) Label1.Text = r.Value2 Cells属性用于获取一个Range类型的对象,该对象表示工作表中一个或一定范围的单元格集合。,12.1 Visual Studio与Excel电子表格,12.1.2 操作Excel工作表 5. 打印工作表 通过Worksheet对象的PrintPreview方法或PrintOut方法可实现工作表打印预览或进行打印输出。 (1) PrintPreview方法 PrintPreview方法带有1个Boolean类型的参数,表示打印预览时是否能对文档进行设置。参数值为False时,预览窗口中的“设置”和“页边距”按钮不可用。需要注意的是,对工作表进行打印预览前应将ApplicationClass对象的Visible属性设置为True,否则将无法看到预览效果。 (2) PrintOut方法,12.1 Visual Studio与Excel电子表格,12.1.3 Excel与数据库的数据交互 1. 从数据库导出记录到Excel 导出数据到Excel的操作步骤如下。 1) 建立与源数据库的连接。 2) 打开目标Excel模板文件。 3) 创建DataReader对象,并通过调用其Read方法从数据库中读取需要的数据。 4) 将DataReader对象读取到的数据写入Excel工作表的指定单元格。 5) 关闭数据库连接、另存Excel文件、释放Excel对象。,12.1 Visual Studio与Excel电子表格,12.1.3 Excel与数据库的数据交互 2. 从Excel向数据库添加记录 将Excel中数据导入到数据库表的操作步骤如下。 1) 建立与目标数据库的连接。 2) 通过DataAdapter对象从数据库中取出需要的数据。 3) 实例化一个SqlCommandBuilder类对象,并为DataAdapter自动生成更新命令。使用DataAdapter对象的Fill方法填充DataSet。 4) 使用NewRow方法向DataSet中填充的表对象中添加一个新行。 5) 打开源Excel数据文件。 6) 读取Excel工作表对应单元格的数据赋值给新行的各字段。 7) 关闭数据库连接,释放Excel对象。,12.1 Visual Studio与Excel电子表格,12.1.3 Excel与数据库的数据交互 2. 从Excel向数据库添加记录 将Excel中数据导入到数据库表的操作步骤如下。 1) 建立与目标数据库的连接。 2) 通过DataAdapter对象从数据库中取出需要的数据。 3) 实例化一个SqlCommandBuilder类对象,并为DataAdapter自动生成更新命令。使用DataAdapter对象的Fill方法填充DataSet。 4) 使用NewRow方法向DataSet中填充的表对象中添加一个新行。 5) 打开源Excel数据文件。 6) 读取Excel工作表对应单元格的数据赋值给新行的各字段。 7) 关闭数据库连接,释放Excel对象。,12.2 使用Excel输出报表实例,12.2.1 程序功能要求 12.2.2 程序设计要求 12.2.3 程序功能的实现,
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号