VC2010操作EXCEL
2013-02-05 14:44
363 查看
环境:
Windows7
Microsoft Visual Studio 2010
Microsoft Office Excel 2003/2010
1. 新建VC工程
2. 添加Excel类库
在工程名上右键,选择增加->类,选择TypeLib中的MFC类(类向导中同样可以添加)
添加以下类
CApplication
CWorkbook
CWorkbooks
CWorksheet
CWorksheets
CRange
3. 修改头文件
在刚添加的几个头文件中注释掉#import语句
4. 在CRange.h文件中DialogBox()前增加下划线
5. 增加头文件
#include "CApplication.h"
#include "CFont0.h"
#include "CRange.h"
#include "CWorkbook.h"
#include "CWorksheet.h"
#include "CWorkbooks.h"
#include "CWorksheets.h"
6. 编写代码导出.xls文件
COleVariant covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
CApplication objApp;
CWorkbook objBook;
CWorkbooks objBooks;
CWorksheet objSheet;
CWorksheets objSheets;
CRange objRange;
if (!objApp.CreateDispatch(_T("Excel.Application")))
{
AfxMessageBox(_T("无法启动Excel服务器!"));
return;
}
objApp.put_Visible(FALSE);
objBooks = objApp.get_Workbooks();
objBook = objBooks.Add(covOptional);
//objBook = objBooks.Open( TEXT("D:\\Test.xls"),
// covOptional, covOptional, covOptional, covOptional,
// covOptional, covOptional, covOptional, covOptional,
// covOptional, covOptional, covOptional, covOptional);
objSheets = objBook.get_Worksheets();
objSheet = objSheets.get_Item(COleVariant((short)1));
objRange = objSheet.get_Range(COleVariant( TEXT("A1")), COleVariant( TEXT("A1")));
//objRange.SetValue2(COleVariant(str));
objRange.put_Item(COleVariant(long(1)), COleVariant((long)1), COleVariant(TEXT("")));
objRange = objSheet.get_Columns();
objRange.AutoFit();
objBook.SaveAs(COleVariant(strPath), /*TEXT("D:\\Test.xls")),*/
covOptional, covOptional, covOptional, covOptional,
covOptional,(long)0, covOptional, covOptional, covOptional,
covOptional,covOptional);
objApp.put_Visible(TRUE);
objBook.Close(COleVariant((short)FALSE), covOptional, covOptional);
objApp.Quit();
Windows7
Microsoft Visual Studio 2010
Microsoft Office Excel 2003/2010
1. 新建VC工程
2. 添加Excel类库
在工程名上右键,选择增加->类,选择TypeLib中的MFC类(类向导中同样可以添加)
添加以下类
CApplication
CWorkbook
CWorkbooks
CWorksheet
CWorksheets
CRange
3. 修改头文件
在刚添加的几个头文件中注释掉#import语句
4. 在CRange.h文件中DialogBox()前增加下划线
5. 增加头文件
#include "CApplication.h"
#include "CFont0.h"
#include "CRange.h"
#include "CWorkbook.h"
#include "CWorksheet.h"
#include "CWorkbooks.h"
#include "CWorksheets.h"
6. 编写代码导出.xls文件
COleVariant covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
CApplication objApp;
CWorkbook objBook;
CWorkbooks objBooks;
CWorksheet objSheet;
CWorksheets objSheets;
CRange objRange;
if (!objApp.CreateDispatch(_T("Excel.Application")))
{
AfxMessageBox(_T("无法启动Excel服务器!"));
return;
}
objApp.put_Visible(FALSE);
objBooks = objApp.get_Workbooks();
objBook = objBooks.Add(covOptional);
//objBook = objBooks.Open( TEXT("D:\\Test.xls"),
// covOptional, covOptional, covOptional, covOptional,
// covOptional, covOptional, covOptional, covOptional,
// covOptional, covOptional, covOptional, covOptional);
objSheets = objBook.get_Worksheets();
objSheet = objSheets.get_Item(COleVariant((short)1));
objRange = objSheet.get_Range(COleVariant( TEXT("A1")), COleVariant( TEXT("A1")));
//objRange.SetValue2(COleVariant(str));
objRange.put_Item(COleVariant(long(1)), COleVariant((long)1), COleVariant(TEXT("")));
objRange = objSheet.get_Columns();
objRange.AutoFit();
objBook.SaveAs(COleVariant(strPath), /*TEXT("D:\\Test.xls")),*/
covOptional, covOptional, covOptional, covOptional,
covOptional,(long)0, covOptional, covOptional, covOptional,
covOptional,covOptional);
objApp.put_Visible(TRUE);
objBook.Close(COleVariant((short)FALSE), covOptional, covOptional);
objApp.Quit();
相关文章推荐
- VC2010对Excel的操作
- VC2010对Excel的操作
- VC2010对Excel的操作
- VC2010对Excel的操作
- VC2010操作Excel的方法
- VC2010操作Excel时找不到成员问题
- VC2010对Excel的操作
- VC 操作Excel的几种方式
- VC操作Excel
- vc 操作 excel 设置行颜色
- VC控制EXCEL的基本操作之设置篇
- VC操作Excel写入数据源码
- VC对EXCEL操作
- VC2010 设置操作MDI窗体,获得文档视图,设置某个TAB页居最前方
- VC操作Excel
- 1、VC控制EXCEL的基本操作之设置篇
- 使用VC++操作Excel文件
- java 操作 excel 2010
- VC 利用ADO操作Excel
- VC操作Excel-Automation版