基于C语言Excel核价程序设计及实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于C语言Excel核价程序设计及实现

基于C语言Excel核价程序设计及实现Excel是财务工作的常用工具,但是对于复杂的函数操作,对于一些不熟悉计算机编程知识的财务人员是一件比较头疼的事情。笔者结合C语言对Excel文件的OLE操作函数,开发出的应用程序简单易用,解决了财务核价工作面临的这一难题。 核价的目的 核价没有规律与理论的依据,是一个很活的东西。但是也是有一定的依靠的。它分为前核算与后核算。前核算主要是针对产品的前期情况作出一个大致的估计与预算,这并不是一味盲目性的估计,而是要对产品有一定的了解或是在此行业中熟悉的人才可作其工作。前核算是研究产品的各类信息以便报给客人正确的价位,当然也可以让核价方的利益损耗一目了然。后核算是产品出货后,在前核算的基础上对照产品的各种材料成本包括工人工资在内的细节全面系统的进行一个大结算。后核算将能看出真正的利益与否。 核价的过程 核价的过程一般是将已有工作表的物品价格清单中的价格,与另一工作表的物品清单中的物品名称核对,再将对应的价格导入到另一工作表。如图1所示, 物品名称 单价(元) 铅笔 2 橡皮 1.5 纸 10 墨水 6 中性笔 2.5 物品名称 单价(元) 橡皮 纸 中性笔 胶水 已有工作表(工作表1) 另一工作表(工作表2) 物品名称 单价(元) 橡皮 1.5 纸 10 中性笔 2.5 胶水 核价后的工作表 图1 核价过程 算法: 本程序的算法为穷举算法,即将工作表2中的物品名称与工作表1中的物品名称匹配,匹配成功的就将工作表1中的物品单价复制到工作表2的物品单价项,以达到核价的目的。 算法如下: For(i=0;inext; } Else 表2当前记录=表2当前记录-next; } 表1当前记录=表1当前记录-next; } 实现方法 OLE(对象的链接与嵌入)是微软于20世纪90年代初提出并大力推广和不断发展的技术,是应用程序间交换数据、相互操作的一种有效方式,微软的Office产品提供了很强的OLE服务功能,Visual Basic、Delphi及C++Builder等语言都可以客户方式向Excel提交命令,以存取其中的数据,其中Visual Basic和Delphi在操作上最为简单,在语法上采用类VBA的语句;而C++Builder则采用间接的方法,利用变体类Variant所提供的方法向OLE服务程序提交操纵命令。 在C++Builder中,使用OLE方式操作Excel表通常包括以下过程:创建应用程序对象;创建工作薄对象;创建工作表对象;打开当前工作表;操作工作表(如设置单元格值,获取单元格值,设置单元格字体,设置单元格格式,重命名工作表,设置列宽,设置行高及插入删除等操作);保存工作薄;退出工作薄;退出Excel程序。以下是本核价程序通过OLE方式从Excel文件导入数据的主要代码。 … //从Excel表获取数据 for(int i=1;iStringGrid1-Cells[j-1][i-1]=Str; } } 用以上方式将表1和表2导入到程序中,进行核价,核价过程的具体实现代码如下:for(int n=1;nStringGrid2-RowCount;n++) { for(int m=1;mStringGrid1-RowCount;m++) { if(Form1-StringGrid1-Cells[0][m-1]==Form1-StringGrid2-Cells[0][n-1]) Form1-StringGrid2-Cells[1][n-1]=Form1-StringGrid1-Cells[1][m-1]; } } 核价结束后再将结果保存到Export.xls文件中。保存方法如下: … //给Excel表赋值 for(int i=1;iStringGrid2-RowCount;i++) { for(int j=1;jStringGrid2-ColCount;j++) { AnsiString StrValue=Form1-StringGrid2-Cells[j-1][i-1]; WorkSheet3.OlePropertyGet(“Cells”,i,j).OlePropertySet(“Value”,StrValue.c_str()); } } 结语 基于C语言的Excel核价程序,利用应用程序效率高、错误率小的优点,构建了简

文档评论(0)

linsspace + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档