ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:18.08KB ,
资源ID:10577718      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10577718.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(MFC操作Excel.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

MFC操作Excel.docx

1、MFC操作ExcelMFC操作Excel下面的操作基于Excel2003一初始化操作1.导入类库点击查看-建立类向导- Add Class.From a type Library.- C:Program FilesMicrosoft OfficeOfficeEXCEL.EXE,接下来就可以看到导入的类excel.h, excel.cpp。2.初始化COM找到App的InitInstance()函数,在其中添加AfxOleInit()函数的调用,如:cppview plaincopy1. if(!AfxOleInit()2. 3. 4. 5. AfxMessageBox(注册COM出错!);6.

2、 7. returnFALSE;8. 9. 二我自己写的Excel操作类ExcelOperate.hcppview plaincopy1. #includeatlbase.h2. #includeexcel.h3. usingnamespacemyexcel;4. classCExcelOperate5. 6. private:7. myexcel:_Applicationm_ecApp;8. Workbooksm_ecBooks;9. _Workbookm_ecBook;10. Worksheetsm_ecSheets;11. _Worksheetm_ecSheet;12. myexcel:

3、Rangem_ecRange;13. VARIANTret;/保存单元格的值14. public:15. CExcelOperate();16. virtualCExcelOperate();17. public:18. /操作19. /*创建新EXCEL*20. BOOLCreateApp();21. BOOLCreateWorkbooks();/创建一个新的EXCEL工作簿集合22. BOOLCreateWorkbook();/创建一个新的EXCEL工作簿23. BOOLCreateWorksheets();/创建一个新的EXCEL工作表集合24. BOOLCreateWorksheet(

4、shortindex);/创建一个新的EXCEL工作表25. BOOLCreateSheet(shortindex);26. BOOLCreate(shortindex=1);/创建新的EXCEL应用程序并创建一个新工作簿和工作表27. voidShowApp();/显示EXCEL文档28. voidHideApp();/隐藏EXCEL文档29. /*打开文档*30. BOOLOpenWorkbook(CStringfileName,shortindex=1);31. BOOLOpen(CStringfileName);/创建新的EXCEL应用程序并打开一个已经存在的文档。32. BOOLSe

5、tActiveWorkbook(shorti);/设置当前激活的文档。33. 34. /*保存文档*35. BOOLSaveWorkbook();/Excel是以打开形式,保存。36. BOOLSaveWorkbookAs(CStringfileName);/Excel以创建形式,保存。37. BOOLCloseWorkbook();38. voidCloseApp();39. /*读信息*40. BOOLGetRangeAndValue(CStringbegin,CStringend);/得到begin到end的Range并将之间的值设置到ret中41. voidGetRowsAndCols

6、(long&rows,long&cols);/得到ret的行,列数42. BOOLGetTheValue(introws,intcols,CString&dest);/返回第rows,cols列的值,注意只返回文本类型的,到dest中43. BOOLSetTextFormat(CString&beginS,CString&endS);/将beginS到endS设置为文本格式(数字的还要用下面的方法再转一次)44. BOOLSetRowToTextFormat(CString&beginS,CString&endS);/将beginS到endS(包括数字类型)设置为文本格式45. 46. ;Ex

7、celOperate.cppcppview plaincopyCExcelOperate:CExcelOperate()CExcelOperate:CExcelOperate()BOOLCExcelOperate:CreateApp()/if(FALSE=m_wdApp.CreateDispatch(Word.Application)COleExceptionpe;if(!m_ecApp.CreateDispatch(_T(Excel.Application),&pe)AfxMessageBox(Application创建失败,请确保安装了word2000或以上版本!,MB_OK|MB_ICO

8、NWARNING);pe.ReportError();throw&pe;returnFALSE;returnTRUE;BOOLCExcelOperate:CreateWorkbooks()/创建一个新的EXCEL工作簿集合if(FALSE=CreateApp()returnFALSE;m_ecBooks=m_ecApp.GetWorkbooks();if(!m_ecBooks.m_lpDispatch)AfxMessageBox(WorkBooks创建失败!,MB_OK|MB_ICONWARNING);returnFALSE;returnTRUE;BOOLCExcelOperate:Creat

9、eWorkbook()/创建一个新的EXCEL工作簿if(!m_ecBooks.m_lpDispatch)AfxMessageBox(WorkBooks为空!,MB_OK|MB_ICONWARNING);returnFALSE;COleVariantvOptional(long)DISP_E_PARAMNOTFOUND,VT_ERROR);m_ecBook=m_ecBooks.Add(vOptional);if(!m_ecBook.m_lpDispatch)AfxMessageBox(WorkBook为空!,MB_OK|MB_ICONWARNING);returnFALSE;/*/得到docu

10、ment变量m_wdDoc=m_wdApp.GetActiveDocument();if(!m_wdDoc.m_lpDispatch)AfxMessageBox(Document获取失败!,MB_OK|MB_ICONWARNING);returnFALSE;/得到selection变量m_wdSel=m_wdApp.GetSelection();if(!m_wdSel.m_lpDispatch)AfxMessageBox(Select获取失败!,MB_OK|MB_ICONWARNING);returnFALSE;/得到Range变量m_wdRange=m_wdDoc.Range(vOption

11、al,vOptional);if(!m_wdRange.m_lpDispatch)AfxMessageBox(Range获取失败!,MB_OK|MB_ICONWARNING);returnFALSE;*/returnTRUE;BOOLCExcelOperate:CreateWorksheets()/创建一个新的EXCEL工作表集合if(!m_ecBook.m_lpDispatch)AfxMessageBox(WorkBook为空!,MB_OK|MB_ICONWARNING);returnFALSE;m_ecSheets=m_ecBook.GetSheets();if(!m_ecSheets.m

12、_lpDispatch)AfxMessageBox(WorkSheets为空!,MB_OK|MB_ICONWARNING);returnFALSE;returnTRUE;BOOLCExcelOperate:CreateWorksheet(shortindex)/创建一个新的EXCEL工作表if(!m_ecSheets.m_lpDispatch)AfxMessageBox(WorkSheets为空!,MB_OK|MB_ICONWARNING);returnFALSE;m_ecSheet=m_ecSheets.GetItem(COleVariant(index);if(!m_ecSheet.m_l

13、pDispatch)AfxMessageBox(WorkSheet为空!,MB_OK|MB_ICONWARNING);returnFALSE;returnTRUE;BOOLCExcelOperate:CreateSheet(shortindex)if(CreateWorksheets()=FALSE)returnFALSE;if(CreateWorksheet(index)=FALSE)returnFALSE;returnTRUE;BOOLCExcelOperate:Create(shortindex)/创建新的EXCEL应用程序并创建一个新工作簿和工作表if(CreateWorkbooks(

14、)=FALSE)returnFALSE;if(CreateWorkbook()=FALSE)returnFALSE;if(CreateSheet(index)=FALSE)returnFALSE;returnTRUE;voidCExcelOperate:ShowApp()/显示WORD文档m_ecApp.SetVisible(TRUE);voidCExcelOperate:HideApp()/隐藏word文档m_ecApp.SetVisible(FALSE);/*打开文档*BOOLCExcelOperate:OpenWorkbook(CStringfileName,shortindex)if(

15、!m_ecBooks.m_lpDispatch)AfxMessageBox(WorkSheets为空!,MB_OK|MB_ICONWARNING);returnFALSE;/COleVariantvFileName(_T(fileName);COleVariantVOptional(long)DISP_E_PARAMNOTFOUND,VT_ERROR);m_ecBook=m_ecBooks.Open(fileName,VOptional,VOptional,VOptional,VOptional,VOptional,VOptional,VOptional,VOptional,VOptional

16、,VOptional,VOptional,VOptional,VOptional,VOptional);if(!m_ecBook.m_lpDispatch)AfxMessageBox(WorkSheet获取失败!,MB_OK|MB_ICONWARNING);returnFALSE;if(CreateSheet(index)=FALSE)returnFALSE;returnTRUE;BOOLCExcelOperate:Open(CStringfileName)/创建新的EXCEL应用程序并打开一个已经存在的文档。if(CreateWorkbooks()=FALSE)returnFALSE;ret

17、urnOpenWorkbook(fileName);/*BOOLCExcelOperate:SetActiveWorkbook(shorti)/设置当前激活的文档。*/*保存文档*BOOLCExcelOperate:SaveWorkbook()/文档是以打开形式,保存。if(!m_ecBook.m_lpDispatch)AfxMessageBox(Book获取失败!,MB_OK|MB_ICONWARNING);returnFALSE;m_ecBook.Save();returnTRUE;BOOLCExcelOperate:SaveWorkbookAs(CStringfileName)/文档以创

18、建形式,保存。if(!m_ecBook.m_lpDispatch)AfxMessageBox(Book获取失败!,MB_OK|MB_ICONWARNING);returnFALSE;COleVariantvTrue(short)TRUE),vFalse(short)FALSE),vOptional(long)DISP_E_PARAMNOTFOUND,VT_ERROR);COleVariantvFileName(_T(fileName);m_ecBook.SaveAs(vFileName,/VARIANT*FileNamevOptional,/VARIANT*FileFormatvOptiona

19、l,/VARIANT*LockCommentsvOptional,/VARIANT*PasswordvOptional,/VARIANT*AddToRecentFilesvOptional,/VARIANT*WritePassword0,/VARIANT*ReadOnlyRecommendedvOptional,/VARIANT*EmbedTrueTypeFontsvOptional,/VARIANT*SaveNativePictureFormatvOptional,/VARIANT*SaveFormsDatavOptional,/VARIANT*SaveAsAOCELettervOption

20、al/VARIANT*ReadOnlyRecommended/*vOptional,/VARIANT*EmbedTrueTypeFontsvOptional,/VARIANT*SaveNativePictureFormatvOptional,/VARIANT*SaveFormsDatavOptional/VARIANT*SaveAsAOCELetter*/);returnTRUE;BOOLCExcelOperate:CloseWorkbook()COleVariantvTrue(short)TRUE),vFalse(short)FALSE),vOptional(long)DISP_E_PARAMNOTFOUND,VT_ERROR);m_ecBook.Close(vFalse,/SaveChanges.vTrue,/OriginalFormat.vFalse/RouteDocument.);m_ecBook=m_ecApp.GetActiveWorkbook();if(!m_ecBook.m_lpDispatch)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1