MFC中Excel的导入以及使用步骤

参考地址
右击项目出现“类向导”界面
添加类中选择“类型库中的MFC类”点击类向导,找到可用的类型库为Excel的库

在接口中选择对应类添加到右侧生成的类中后点击完成
添加完成后项目中出现以上头文件
在需要对EXCEL表进行操作的类中添加以下头文件:若出现大量错误将其放入stdafx.h中

#include "resource.h"       // 主符号
#include "CWorkbook.h"		//单个工作簿
#include "CRange.h"			//区域类,对Excel大部分操作都需要
#include "CWorkbooks.h"		//管理所有工作簿
#include "CApplication.h"	//Excel应用程序类,管理整个Excel应用

在类中添加以下变量定义:

	//定义Excel中需要的工作簿以及工作表等CApplication m_App;CWorkbooks	m_Books;CWorkbook	m_Book;CWorksheets m_Sheets;CWorksheet	m_Sheet;CRange		m_Range;

然后就可以封装对应函数,以下为打开Excel表的例子,一般包括Excel的读写:

//打开Excel表
int	CExcel_TestApp::OpenExcel(CString FileName)
{HRESULT Hr;//HRESULT函数返回值Hr = CoInitialize(NULL);//CoInitialize告诉Windows以单线程方式创建com对象if (FAILED(Hr)){AfxMessageBox(_T("调用函数失败!"));}LPDISPATCH LpDisp;COleVariant CovOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);if (!m_App.CreateDispatch(_T("Excel.Application"), NULL)){AfxMessageBox(_T("无法启动EXCEL服务器!"));return 0;}m_Books.AttachDispatch(m_App.get_Workbooks);//得到工作簿LpDisp = m_Books.Open(FileName, CovOptional, CovOptional, CovOptional, CovOptional,CovOptional, CovOptional, CovOptional, CovOptional, CovOptional,CovOptional, CovOptional, CovOptional, CovOptional);m_Book.AttachDispatch(LpDisp);//得到单个工作簿m_Sheets.AttachDispatch(m_Book.get_Worksheets);//得到工作簿对应的工作表LpDisp = m_Book.get_ActiveSheet();//得到当前活跃的工作表m_Sheet.AttachDispatch(LpDisp);//获取到表return 1;}

若运行出错,将导入的所有包含#import “C:\Program Files (x86)\Microsoft Office\Root\Office16\EXCEL.EXE” no_namespace头文件中的注释,将CRange.h中的DialogBox改为_DialogBox;

int	MFC_OpenExcel::OpenExcel(CString FileName)
{HRESULT Hr;//HRESULT函数返回值Hr = CoInitialize(NULL);//CoInitialize告诉Windows以单线程方式创建com对象if (FAILED(Hr)){AfxMessageBox(_T("调用函数失败!"));}LPDISPATCH LpDisp;COleVariant CovOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);if (!m_App.CreateDispatch(_T("Excel.Application"), NULL)){AfxMessageBox(_T("无法启动EXCEL服务器!"));return 0;}m_Books=m_App.get_Workbooks();//得到工作簿LpDisp = m_Books.Open(FileName, CovOptional, CovOptional, CovOptional, CovOptional,CovOptional, CovOptional, CovOptional, CovOptional, CovOptional,CovOptional, CovOptional, CovOptional, CovOptional, CovOptional);m_Book.AttachDispatch(LpDisp);//得到单个工作簿m_Sheets=m_Book.get_Worksheets();//得到工作簿对应的工作表LpDisp = m_Book.get_ActiveSheet();//得到当前活跃的工作表m_Sheet.AttachDispatch(LpDisp);//获取到表return 1;}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/60554.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端开发中常用的包管理器(npm、yarn、pnpm、bower、parcel)

文章目录 1. npm (Node Package Manager)2. Yarn (Yarn Package Manager)3. pnpm4. Bower5. Parcel总结 前端开发中常用的包管理器主要有以下几个: 1. npm (Node Package Manager) 简介: npm 是 Node.js 的默认包管理器,也是最广泛使用的包…

Linux(CentOS)安装 Nginx

CentOS版本:CentOS 7 Nginx版本:1.24.0 两种安装方式: 一、通过 yum 安装,最简单,一键安装,全程无忧。 二、通过编译源码包安装,需具备配置相关操作。 最后附:设置 Nginx 服务开…

深度学习项目启动(笔记用)

深度学习项目启动 项目配置虚拟环境 项目配置虚拟环境

万字长文解读深度学习——卷积神经网络CNN

推荐阅读: 卷积神经网络(CNN)详细介绍及其原理详解 CNN笔记:通俗理解卷积神经网络 文章目录 🌺深度学习面试八股汇总🌺主要组件输入层卷积层 (Convolutional Layer)批归一化层(Batch Normalizat…

VBA10-处理Excel的动态数据区域

一、end获取数据边界 1、基本语法 1-1、示例: 2、配合row和column使用 2-1、示例1 2-2、示例2 此时,不管这个有数值的区域,怎么增加边界,对应的统计数据也会跟着变的! 二、end的缺陷 若是数据区域不连贯,则…

Spring boot + Vue2小项目基本模板

Spring boot Vue2小项目基本模板 基本介绍基本环境安装项目搭建最终效果展示 基本介绍 项目来源哔哩哔哩的青戈,跟着学习搭建自己的简单vue小项目;看别人的项目总觉得看不懂,需要慢慢打磨 这里目前只简单的搭建了菜单导航和表格页面&#x…

“箱体分析”,箱体支撑压力位,分析市场方向 通达信主图 源码

使用技巧 该指标用于在通达信的K线图上绘制箱体分析图形,主要通过支撑位、波浪顶、箱体上下限等多个技术指标来识别股票的支撑和压力区域。 支撑位分析:可以帮助用户识别股价的支撑区域,并判断是否会反弹。 箱体震荡区间识别:通…

PICO+Unity MR视频透视

官方链接:视频透视 | PICO 开发者平台 在 PXR_Manager (Script) 面板上,勾选 Video Seethrough 选框 2.将 Clear Flags 设置为 Solid Color。颜色设置为黑色,Alpha 通道设置为完全透明 3.在代码中开启透视 using System.Collections; usin…

大学生福音!用gpt-4o和o1大模型拿捏大学化学作业

文章目录 零、前言一、使用GPT操作指导作业拍照使用o1-preview大模型小结 二、感受 零、前言 昨天发了gpt-4o拿捏大学物理作业,群友说,急需要一位化学老师指导 虚竹哥是宠粉的,连夜请了一位博士级的化学老师~ 一、使用GPT 操作指导 ChatG…

2024-11-12 学习人工智能的Day25 scikit-learn库初见

简简单单的数据集 from sklearn.datasets import load_iris/fectch 简单的引用世界数据集和玩具数据集方式 #下面是在获取数据集后常用的值 feature feature_names DESCR target target_names filename from sklearn.datasets import load_iris import numpy as np import…

2024 年将 Postman 文档导出为 HTML 或 Markdown

2024 年将 Postman 文档导出为 HTML 或 Markdown

访问网页的全过程(知识串联)

开发岗中总是会考很多计算机网络的知识点,但如果让面试官只靠一道题,便涵盖最多的计网知识点,那可能就是 网页浏览的全过程 了。本篇文章将带大家从头到尾过一遍这道被考烂的面试题,必会!!! 总…

服务器硬件介绍

计算机介绍 现在的人们几乎无时无刻都在使用电脑!而且已经离不开电脑了。像桌上的台式电脑(桌机)、笔记本电脑(笔电)、平板电脑、智能手机等等,这些东西都算是电脑。 台式机电脑介绍 计算机又被称为电脑。台式机电脑主要分为主机和显示器两个部分&…

04-HTTP协议、请求报文、响应报文

欢迎来到“雪碧聊技术”CSDN博客! 在这里,您将踏入一个专注于Java开发技术的知识殿堂。无论您是Java编程的初学者,还是具有一定经验的开发者,相信我的博客都能为您提供宝贵的学习资源和实用技巧。作为您的技术向导,我将…

基于Multisim人数出入加减计数统计电路(含仿真和报告)

【全套资料.zip】人数出入加减计数统计电路Multisim仿真设计数字电子技术 文章目录 功能一、Multisim仿真源文件二、原理文档报告资料下载【Multisim仿真报告讲解视频.zip】 功能 设计两路光控电路,一路放置在入口,另一路设置在出口,当有人…

车机安装第三方软件实现打开软件全屏教程

简介 越来越多的车友实现安装第三方软件了,但是有的车机的状态栏或者导航栏会遮挡安装的第三方软件。这样的话,第三方软件就会显示不全,体验感非常不好。所以,下面我教一下大家如何使用东君应用管家来实现打开第三方软件全屏。 全…

CLion配置QT开发环境

一、将qmake工程转为cmake工程(方法一:用工具转换并做适当修改) 1、工具链接:链接:https://pan.baidu.com/s/1grW2QY3sW8X2JaHWM_ePPw 提取码:7at4 工具源码:https://github.com/milahu/qmake2cmake 2、执行…

第3章-需求 3.4 需求的合法合规性审查

3.4 需求的合法合规性审查 3.4.1 项目需求的合法性审查3.4.2 委托研发项目的法律问题3.4.3 项目实施过程中的知识产权问题1.开发成果的知识产权保护2.开发过程中的侵权风险防控 近年来随着依法治国的深度开展,企业合规的概念越来越多地出现在大众眼前,也…

怎么保护源代码,源代码防泄密的十种方法

在现代软件开发中,源代码被视为企业的“数字资产”,它不仅承载着企业的核心竞争力,更是推动技术创新和业务发展的基石。然而,随着信息技术的普及和开发环境的复杂化,源代码泄密的风险也在不断增加。保护源代码的安全已…

单相锁相环,原理与Matlab实现

单相锁相环基本原理 单相锁相环的基本原理图如下所示, u α u_\alpha uα​ u β u_\beta uβ​经Park变换、PI控制实现对角频率 ω \omega ω和角度 θ \theta θ的估算。不同锁相环方案之间的差异,主要表现在正交电压 u β u_\beta uβ​的生成&#x…