网站大量收购独家精品文档,联系QQ:2885784924

在 VFP 中调用 Excel 的经验集.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
在 VFP 中调用 Excel 的经验集

在 VFP 中控件 Excel 的小小经验集 1、 获取工作表名称 在以下示例中,创建了一个 microsoft excel 实例,添加了一个新的工作簿。使用 foreach 语句显示工作簿中每个工作表的名称。此示例要求在运行示例的机器上正确安装 microsoft excel。 oExcel = CREATE(Excel.Application) oExcel.Workbooks.ADD FOR EACH oMyVar IN oExcel.sheets ? oMyVar.name NEXT oMyVar 2、 Excel报表巧生成 巧让foxpro数据生成Excel报表 Visual FoxPro是应用广泛的前台数据库开发平台之一,因此在我们日常工作中时常会遇到DBF数据文件。然而随着办公自动化的普及,越来越多的时候需要将DBF文件转化为Excel电子文档。常用转化方法是在FoxPro中用Copy命令进行格式转化或直接用Excel打开DBF文件。这两种方式虽然都能达到目的,却不能得到格式规范、可以直接打印输出的报表,且输出的Excel文件中,无法对数据类型进行有效转换,极易出现数据统计错误。有没有更好的方法呢?这里有一个更加通用的方法,在vfp中调用Excel,可以由DBF文件直接生成格式如下图所示一样复杂的Excel报表 假设我们要将表Agcallop.dbf文件输出为Excel格式文档,报表形如图1所示。为使通用性更强,页面采用A4纸横向输出,默认字体为宋体10号,页脚处添加页号。 部分程序代码如下: m.outfilename=putfile(输出结果,agcallop,xls) 取导出文件名称 ef=CREATEOBJECT(Excel.application) 调用Excel程序 ef.Workbooks.add 添加工作簿 ef.Worksheets(sheet1).Activate 激活第一个工作表 ef.visible=.t. 显示Excel界面 ef.Cells.Select 选择整张表 ef.Selection.Font.Size = 10 设置整表默认字体大小为10 select 0 use agcallop 选择被导出的表 num=reccount() 求导出总记录数 go top i=5 ef.range(F1:K1).Select 选择标题栏所在单元格 ef.Selection.Merge 合并单元格 with ef.range(F1 ) 设置标题及字体属性 .value=客户服务部业务代表工作量情况统计表 .Font.Name=黑体 .Font.size=18 endwith ef.Rows(2).RowHeight=1/0.035 设置第二行高度为1cm ef.range(H2:O2).Select 选定统计条件栏所在单元格 ef.Selection.Merge 合并单元格 ef.range(H2).Font.size=10 ef.range(H2).HorizontalAlignment=4 设置内容对齐方式为右对齐,3为居中,2为右对齐 ef.range(H2).value=统计时间: dtoc(date()) 打印日期: dtoc(date()) ef.Rows(3:4).Select with ef.Selection .HorizontalAlignment = 3 设置3、4行为水平对齐 .VerticalAlignment = 2 垂直居中 .NumberFormatLocal = @ 设置3、4行为字符型内容 endwith ef.Range(A3:A4).Select ef.Selection.Merge 纵向合并第一列3、4行 ef.Range(A3).value=工号 设置第一列标题内容 ef.Columns(A).Select 整列选择 ef.Selection.HorizontalAlignment = 3 水平居中 ef.Columns(A:B).Select ef.Selection.NumberFormatLocal = @ 设置A、B列为字符型内容 ef.Range(B3:B4).Select ef.Selection.Merge 纵向合并第二列3、4行 ef.Range(B3).value=姓名 设置第二列标题内容 ef.Columns(B).Select 整列选择 ef.Selection.HorizontalAlignment = 3 水平居中 ef.Range(C3:E3).Select 横向合并第三行C-E列 ef.Selection.Merge ef.Range(C3).value=话务总量 第三行大标题为“话务总量”的列 ef.Range

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档