VS2008中C++打开Excel(MFC)
第一步:建立project
选择C++下的MFC Application
选择dialog based,中文。之后点击finish
第二步:导入EXCEL头文件
选择Project->AddClass->MFC Class From Typelib后,点击Add,进入MFC ClassFrom Typelib Wizard对话框下,选择Microsoft Excel 11.0 Object Library<1.5>(我用的是Microsoft Office2003)将上图中Class添加进来。点击finish
并在TExcel.cpp开始添加:
#include"CRange.h"
#include"CSheets.h"
#include"CWorkbook.h"
#include"CWorkbooks.h"
#include"CApplication.h"
#include"CWorksheet.h"
#include"CWorksheets.h"
在每一个添加进来的头文件中去掉
#import "C:\\Program Files\\MicrosoftOffice\\OFFICE11\\EXCEL.EXE" no_namespace
第三步:打开COM口
添加AfxOleInit();
第四步:建一个Button按钮
选择Toolbox中的Button在TExcel.rc的IDD_TEXCEL_DIALOG中点击,建立如上图的Button按钮将属性中的Caption修改为“打开Excel”
第五步:为Button按钮编写程序
双击“打开Excel”
在// TODO: Add your controlnotification handler code here后添加如下程序:
CApplication objApp;//判断是否存在EXCEL应用程序
CWorkbooksobjBooks;
CWorkbookobjBook;
CWorksheetsobjSheets;
CWorksheetobjSheet;
CRangeobjRange,usedRange;//单元格获取
VARIANTret;
objApp.CreateDispatch(_T("Excel.Application"));//判断是否存在EXCEL应用程序
COleVariantVOptional((long)DISP_E_PARAMNOTFOUND,VT_ERROR);
objApp.put_Visible(TRUE);
objApp.put_UserControl(TRUE);
LPDISPATCHpwkbooks=objApp.get_Workbooks();
objBooks.AttachDispatch(pwkbooks,TRUE);
charcurrentprogrampath[MAX_PATH];
objBooks=objApp.get_Workbooks();
objBook=objBooks.Add(VOptional);
objSheets=objBook.get_Sheets();
CStringstr;
str="A1";
objSheet=objSheets.get_Item(COleVariant((short)1));
objRange=objSheet.get_Range(COleVariant(str),COleVariant(str));
objRange=objSheet.get_Range(COleVariant(_T("C4")),COleVariant(_T("B4")));
objRange.put_Formula(COleVariant(_T("=RAND()*100000")));
objRange.put_NumberFormat(COleVariant(_T("$0.00")));
usedRange=objRange.get_EntireColumn();
usedRange.AutoFit();
第六步:避免Error 2 error C2059: syntax error : ','
将CRange.h下VARIANT DialogBox()改为VARIANT _DialogBox()
最后运行:
VS2008中C++打开Excel(MFC)相关推荐
- 如何让不使用vba没办法打开excel表_Excel常见问题
更多Excel的问题,可以直接打开正解网(http://www.zhengjie.com/)搜索及提问. 手机微信扫码打开小程序,使用更方便: 正解网微信小程序 Excel 的单元格如何换行? Exc ...
- VB打开Excel文件
(1)vb打开Excel 用EXCEL对象读取EXCEL文件中数据.然后通过ADODB连接SQL进和导入 下面是EXCEL对象的详解 1 前言 做为一种简捷.系统的 Windows应用程序开发 ...
- Qt中打开excel文件
qt中打开excel文件有两种方法 第一种,用QAxObject,在使用QAxObject,要在.pro文件中添加QT += axcontainer,同时在调用文件中添加#include <QA ...
- python打开excel的函数-Python读取excel文件中带公式的值的实现
在进行excel文件读取的时候,我自己设置了部分直接从公式获取单元格的值 但是用之前的读取方法进行读取的时候,返回值为空 import os import xlrd from xlutils.copy ...
- MFC 多文档中同时打开多个文档
MFC多文档中的打开继承自CWinAppEx中的函数OnFileOpen(),这一点在CXXX.cpp中可以看到.比如如下: [cpp] view plain copy // CCVMFCApp BE ...
- 15、解决14中csv用excel打开乱码的问题 open('zhihu.csv','w',newline='',encoding='utf-8-sig')...
解决14中csv用excel打开乱码的问题 ,其实就是在写csv的时候把 utf-8 改成 utf-8-sig open('zhihu.csv','w',newline='',encoding='ut ...
- VS2008 在IE8中 调试 ActiveX控件 无法进入断点的解决方法 设置VS2008和IE8 调试ATL MFC ActiveX控件
VS2008 在IE8中 调试 ActiveX控件 无法进入断点的解决方法 设置VS2008和IE8 调试ATL MFC ActiveX控件 参考文章: (1)VS2008 在IE8中 调试 Acti ...
- 计算机中丢失vba,打开Excel的时候提示visual basic项目错误导致VBA模块代码丢失
有的时候,每当我们打开有VBA代码的Excel文件时,会看到提示,大概意思就是说"丢失了visual basic项目错误"的提示.结果,只能有只读的方式打开Excel.最后,Exc ...
- 硬盘在计算机上没显示内存不足,电脑中打开excel表格提示内存或磁盘空间不足如何解决...
excel是很多用户日常办公或者学习的时候经常会用到的表格软件,不过近日有不少用户在电脑中打开excel表格的时候,却弹出窗口,显示内存或磁盘不足,Microsoft Excel无法再次打开或保存任何 ...
最新文章
- 特斯拉AI主管给你的33条深度学习训练建议
- decimal类型保留两位小数
- 新手小白零基础搭建个人博客(一)服务器篇
- python sql注入漏洞 ctf_CTF-WEB 一个登录框SQL盲注
- Php xml 目录,PHP-PHP+xml的无限分类树目录的方法?
- Give Candies【快速幂+欧拉】
- springmvc是什么_SpringBoot与SpringMVC的区别是什么?
- numpy python 兼容_Python 2和3之间的numpy数组的不兼容性
- 【十万个编程篇】Linux—Debian系列,deb包首次分析
- 国家邮政局:前10月邮政行业业务收入同比增长17.8%
- wpf 怎样判断是否选中 checkbox_怎样判断一个人是否缺爱?
- Windows平台安装cocos2d-x V3.17.2
- JavaScript留言板效果代码实例
- 一阶微分方程的物理意义_薛定谔方程的物理意义
- 使用Apache Tika实现内容分析
- 《“笨办法” 学C语言(Learn C The Hard Way)》
- Vben Admin 安装依赖l 安装报错:Error: command failed: c: \WINDOWS\system32\cmd.exe /s /c autoreconf -ify 解决办法
- 解决window7中浏览器无法上网问题
- Jenkins GSoC 2020 机器学习插件项目
- 什么是Hash哈希(散列表)
热门文章
- 交换两个变量的值,不使用第三个变量的四种法方法
- 升级浏览器_升级Unity 8,优化系统组件,添加键盘手势,升级浏览器,UbuntuTouch最大的一次更新
- vb隐藏指定程序系统托盘图标_Windows环境设置系统托盘图标默认显示
- 3d模型多怎么优化_3D打印人像模型是怎么制作出来的呢?
- linux文件被覆盖如何恢复_在Linux下误删文件后恢复
- python pytest框架
- dom4j工具类_基于DOM4J的XML文件解析类
- fpga如何约束走线_FPGA设计约束技巧之XDC约束之I/O篇 (上)
- java 避免重定向_java重定向与转发的问题
- android 自动截图分享,Android截图和分享