网站大量收购闲置独家精品文档,联系QQ:2885784924

VC从excel读取数据打印到固定位置.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
广丰鄂 摘要: 程序利用微软提供的excel操作的库函数读入数据,再调用MFC中的CDC类进行固定位置打印。 内容: 程序主要分两步:第一步从excel读取数据。第二步把excel读入的数据打印到纸张的固定位置。 从excel读取数据 一:准备工作 开始新建基于对话框的工程,记得在第四个向导中选择作为静态链接库导入。新建好之后导入excel操作库函数,依次选择View - ClassWizard -Add New Class -From a type library。在弹出的对话框中选择装excel的安装目录,选择excel.exe,然后添加类,主要类型有_Applicaiton, Workbooks, _Workbook, Worksheets, _Wordsheet, Range类,其他类型可根据需要自己添加。 Excel接口类中层次如下所示: -_Application -Workbooks 工作薄集合 -_Workbook 工作薄 -Worksheets 工作表集合 -_Worksheet 工作表 -Range单元格区域 (在程序中可能还会使用到word类库,导入步骤一样,添加的类有_Application, Documents, _Document, Selection, 因为word中的类可能与excel中的类名有冲突,可以在冲突的类中添加命名空间,在头文件和源文件中重复的类都包含到一个命名空间,这样就可以有效解决导入两个不同库而出现的类同名的问题) 导入excel库后,可以先看下导入的类提供的函数有哪些,一般可以根据其名字判断该函数的作用,如果不清楚你要做的步骤应该包含哪些函数,可以试下excel中提供的宏: 先打开excel应用程序,点击工具-宏-录制宏,开始录制。 进行你想要的操作,比如多打开工作博,或者添加工作簿,或者其他操作,操作结束后,点击结束宏。 查看录制的宏,点击工具-宏-宏。。。查看宏,本操作是一个已存在的文件,得到的宏如图1所示: 图1 打开存在文件的宏 分析宏,发现打开文件是在Wordbooks类的操作,使用的是Workbooks中的Open函数,然后可以查看导入的库中的Workbooks下的Open函数,选择正确的参数,即可执行打开文件操作。Workbooks下的Open函数原型如下: PDISPATCH Workbooks::Open(LPCTSTR Filename, const VARIANT UpdateLinks, const VARIANT ReadOnly, const VARIANT Format, const VARIANT Password, const VARIANT WriteResPassword, const VARIANT IgnoreReadOnlyRecommended, const VARIANT Origin, const VARIANT Delimiter, const VARIANT Editable, const VARIANT Notify, const VARIANT Converter, const VARIANT AddToMru, const VARIANT Local, const VARIANT CorruptLoad); 会发现类中函数的参数几乎都是VARIANT类型的参数,Variant 是一种特殊的数据类型,除了定长String数据及用户定义类型外,可以包含任何种类的数据。Variant 也可以包含Empty、Error、Nothing及Null等特殊值。可以用VarType函数或TypeName函数来决定如何处理 Variant 中的数据。 “excel.h”和#include “atlbase.h”,要在文件中使用excel库函数,首先必须在此文件包含excel的头文件,atlbase是为了操作简单。 在功成名 + App结尾的源文件中的InitInstance中加入如下代码: if (!AfxOleInit()) { AfxMessageBox(初始化Ole失败!); return FALSE; } 在想要执行excel操作的程序函数或消息响应代码中添加对excel的代码。 首先定义类的对象: spaceExcel::_Application excelApp;

文档评论(0)

ktj823 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档