VC++中,怎样用代码把一组数据写入一个excel文件中??请注意,是VC程序!

zmx0506 2006-12-15 03:47:34
我的要求很简单,就是把一组数据,假如一个10个数字的数组,依次写入EXCEL中的10行。就是一个数据一行,依次往下写就是了,直到写完为止。至于从哪列开始,可以自己指定。
还有,如果指定了已存在的xls文件,则把该文件清空再写;如果没有指定文件,则默认创建一个文件写。


要求就这样。
我以前写过,可惜学习不认真,都忘了,现在时间紧,只好红着脸来问问兄弟们了,我记得那个时候是用excel9.h文件就够了,可现在我装的OFFICE2003,找不到那个头文件了,我记得像这样要求的写文件,代码不超过50行的,大家最好扔段代码上来,再顺便告诉我,头文件哪找??
谢谢!


高手们,解决了这个问题再去看看
http://community.csdn.net/Expert/TopicView3.asp?id=5229308
...全文
215 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zmx0506 2006-12-16
  • 打赏
  • 举报
回复



浮贴
zmx0506 2006-12-15
  • 打赏
  • 举报
回复



先谢了!
wuzoujing 2006-12-15
  • 打赏
  • 举报
回复
再顺便告诉我,头文件哪找??

excel9.h,可以从vc6向导那里找到添加类型库(type library),到office安装路径去找dll或olb,添加即可.另外,也可以去网上下数据库方面的源码,copy其中的excel.h或者excel9.h
wuzoujing 2006-12-15
  • 打赏
  • 举报
回复

CDatabase database;
CString sDriver = _T("MICROSOFT EXCEL DRIVER (*.XLS)"); // Excel安装驱动
CString sExcelFile,sPath;
int data[10];//数据
TRY
{
// 创建进行存取的字符串
sSql.Format(_T("DRIVER={%s};DSN='';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s"),sDriver, sExcelFile, sExcelFile);

// 创建数据库 (既Excel表格文件)
if( database.OpenEx(sSql,CDatabase::noOdbcDialog) )
{
//创建表结构
sSql = _T("CREATE TABLE Exceldemo (数据 TEXT)");
database.ExecuteSQL(sSql);

// 插入第一列数据
for (int b=0;b<10;b++)//可以设置从第几列开始
{
int temp=data[i];
CString tempstr;
tempstr.format("%d",temp);
CString str =_T("INSERT INTO Exceldemo (数据) VALUES ('");
str+=tempstr;
str+="')";
database.ExecuteSQL(str);
}
}
database.Close();
AfxMessageBox(_T("Excel文件写入成功!"));
}
CATCH_ALL(e)
{
// TRACE1(_T("Excel驱动没有安装: %s"),sDriver);
}
END_CATCH_ALL;

5,140

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 Office开发/ VBA
社区管理员
  • Office开发/ VBA社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧