用VC读取含有多个工作表的EXCEL文件的方法

如题,最好有源代码... 如题,最好有源代码 展开
 我来答
我是一个小菜鸡
2015-08-17 · 我其实就是一只小菜鸡
我是一个小菜鸡
采纳数:651 获赞数:55224

向TA提问 私信TA
展开全部
  //创建数据库,即一个Excel的XLS文件
  ConnStr = "Driver={Microsoft Excel Driver (*.xls)};DBQ="+FileName+";";
  ADOConnection->ConnectionString = WideString(ConnStr);
  ADOConnection->Open();

  //

  //创建表,创建成功后再Xls文件中就能看见这个页
  ADOSQL = "CREATE TABLE "+SheetName+"(序号 varchar(8),核算网点号 varchar(12),账号总数 varchar(12),有效账号数 varchar(12),已推广数 varchar(12),新账号总数 varchar(12),新有效账号数 varchar(12),新已推广数 varchar(12))";

  ADOQuery->SQL->Text = ADOSQL;
  ADOQuery->ExecSQL();

  //打开创建好的表,然后向里面写数据
  ADOSQL = "SELECT 序号,核算网点号,账号总数,有效账号数,已推广数,新账号总数,新有效账号数,新已推广数 FROM "+SheetName;
  ADODataSet->Close();
  ADODataSet->CommandText = WideString(ADOSQL);
  ADODataSet->Open();

  ADODataSet->Append();
  ADODataSet->FieldValues["序号"] = AnsiString(sn+1);
  ADODataSet->FieldValues["核算网点号"] =strVBOT;
  ADODataSet->FieldValues["新已推广数"] = AnsiString(nExtendAccNew);
  ADODataSet->Post();
lixin_shirt
2009-05-03 · TA获得超过285个赞
知道小有建树答主
回答量:444
采纳率:0%
帮助的人:382万
展开全部
教你个好办法,在excel的菜单中有一个录制宏的选项,点击录制宏后把你希望通过代码做的事情在excel中操作一下,点击停止录制后再查看宏,就可以得到你刚才操作的VB源代码,然后你将VB代码转化为VC就可以了。详细源代码就不写了,你试试吧,应该不难的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
何处淬吴钩
2009-05-04 · TA获得超过5043个赞
知道大有可为答主
回答量:2947
采纳率:50%
帮助的人:2370万
展开全部
搜索vc操作excel一大堆。我用过一个basicExcel很好用。完全可满足你的要求,不但可以读取还可以创建。http://www.codeproject.com/上注册个帐号搜索下就ok。里面有实例代码。
http://www.codeproject.com/KB/office/BasicExcel.aspx
这是下载页面。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Sam_Chau
2009-05-04 · 超过11用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:0
展开全部
其中包括创建新Excel文件、写入表格数据、读取表格数据(包括对原建Excel文件自已手工添加的行、列数据的准确读取),删除已有Excel表格,对表格中指定行、列、单元格进行查询、插入、替换等操作,同时还可以将生成的Excel文件转换为按指定分隔符分隔的其它文本格式的文件。

参考资料: http://vckbase.com/document/viewdoc/?id=693

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式