vc中把数据库记录表导入Excel
来源:互联网 发布:趣学python编程 中文 编辑:程序博客网 时间:2024/06/04 18:18
同事教我的方法,很实用~ 具体步骤: //取出list值
新建基于对话框的工程,在对话框CTestDialog中添加按钮:IDC_TEST,双击按钮,添加成员函数:CTest::OnTest()。
1.在InitInstance()中添加:
if(CoInitialize(NULL))
{
AfxMessageBox("初始化Com支持库失败!");
exit(1);
}
在 return FALSE;前面添加:
CoUninitialize();
2.在class wizard中选择Add Class->Add a type from a library,选择路径path(即:本机上的excel安装目录,如本人安装目录为:C:/Program Files/Microsoft Office/OFFICE11/Excel.exe),选择_Applicatin,Workbooks,_Workbook,Worksheets,_Worksheet,Range,这样就在你的工程中自动加入了这几个新类,在file view中可以看到多了excel.h和excel.cpp文件。
3.在TestDialog.cpp中加入:
#include "comdef.h"
#include "excel.h"
4.在void OnTest()中添加:
_Application ExcelApp;
Workbooks wbsMyBooks;
_Workbook wbMyBook;
Worksheets wssMysheets;
_Worksheet wsMysheet;
Range rgMyRge;
COleVariant covTrue((short)TRUE), covFalse((short)FALSE), covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
row = m_list.GetItemCount();
col = m_list.GetHeaderCtrl()->GetItemCount();
if(!row)
{
MessageBox("没有任何记录!","系统提示",MB_OK|MB_ICONEXCLAMATION);
return;
}
//创建Excel 2000服务器(启动Excel)
if (!ExcelApp.CreateDispatch("Excel.Application",NULL))
{
AfxMessageBox("创建Excel服务失败,请检查是否安装Excel!");
exit(1);
}
ExcelApp.SetVisible(false);
//利用模板文件建立新文档
char path[MAX_PATH];
GetCurrentDirectory(MAX_PATH,path);
// CString strPath = path;
// strPath += "//template1";
wbsMyBooks.AttachDispatch(ExcelApp.GetWorkbooks(),true);
// wbMyBook.AttachDispatch(wbsMyBooks.Add(_variant_t(strPath)));
wbMyBook.AttachDispatch(wbsMyBooks.Add(covOptional));
//得到Worksheets
wssMysheets.AttachDispatch(wbMyBook.GetWorksheets(),true);
//得到sheet1
wsMysheet.AttachDispatch(wssMysheets.GetItem(_variant_t("sheet1")),true);
rgMyRge.AttachDispatch(wsMysheet.GetCells(),true);
rgMyRge.SetColumnWidth(_variant_t(long(15)));
for(i=0; i<row; i++)
{
for(j =0;j<col;j++)
{
strList = m_list.GetItemText(i,j);
//设置单元值
rgMyRge.SetItem(_variant_t((long)(i+1)),_variant_t((long)(j+1)),_variant_t(strList));
}
}
//将表格保存
CFileDialog dlg(false);//TRUE为OPEN对话框,FALSE为SAVE AS对话框
if(dlg.DoModal()==IDOK)
{
strPath=dlg.GetPathName();
wsMysheet.SaveAs(strPath,vtMissing,vtMissing,vtMissing,vtMissing,
vtMissing,vtMissing,vtMissing,vtMissing,vtMissing);
ExcelApp.SetVisible(true);
}
//释放对象
wbMyBook.Close(covFalse,covOptional,covOptional);
wbsMyBooks.Close();
ExcelApp.Quit();
rgMyRge.ReleaseDispatch();
wsMysheet.ReleaseDispatch();
wssMysheets.ReleaseDispatch();
wbMyBook.ReleaseDispatch();
wbsMyBooks.ReleaseDispatch();
ExcelApp.ReleaseDispatch();
- vc中把数据库记录表导入Excel
- vc中把数据库记录表导入Excel .
- 把Excel表中数据导入数据库
- 把excel文件数据导入到sql数据库表中
- 用VBA把EXCEL表导入ACCESS数据库中
- 如何把excel导入到数据库中!
- 把excel导入到数据库中
- java中怎么把excel导入数据库
- 如何将数据库中的记录表导入到VC中
- 把Excel表中的数据导入数据库
- 【0015】navicat中把excel导入表
- 如何把EXCEL的数据导入到ORACLE数据库中
- 如何把excel数据导入到mysql数据库中
- Java 利用poi把数据库中数据导入Excel
- 把excel数据导入mysql数据库中方法
- 如何把EXCEL数据导入到SQL SERVER数据库中
- ASP:把access数据库中的数据导入到Excel中
- 把EXCEL数据导入到SQL SERVER数据库中
- TTL电平,CMOS电平,OC门,OD门基础知识
- C#构造函数的重载
- C#数据类型-结构类型
- 模式设计学习(7)
- C#中的结构体要使用new来实例化吗?
- vc中把数据库记录表导入Excel
- 黑莓模拟器配置详解
- C#中this关键字的使用
- Python学习资料
- C#属性简介
- 以后这里安家了
- 异常处理机制 --- 相知篇 (八)
- U-boot移植之三:开发板平台配置(u-boot-2009.03)
- 关于Windows下定时器的使用