在VFP中全面控制Excel

来源:互联网 发布:微交易网站源码 编辑:程序博客网 时间:2024/05/16 17:10
VFP和Excel都可以用来进行处理数据库表格,如果巧妙地将二者的优点结合起来,将会大大方便我们的工作。比如我们可以利用VFP进行处理数据,而利用Excel的预览打印功能进行报表打印。这就需要我们在VFP中直接来控制Excel。下面就在开发VFP应用项目时对Excel的控制作一下介绍: 
 
  1.创建Excel对象   
  eole=CREATEOBJECT(′Excel.application′) 
 
  2.添加新工作簿   
  eole.Workbooks.add  

 
  3.设置第3个工作表为激活工作表   
  eole.Worksheets(″sheet3″).Activate 
 
  4.打开指定工作簿   
  eole.Workbooks.Open(″ctempll.xls″) 
 
  5.显示Excel窗口 
  eole.visible=.t. 
 
  6.更改Excel标题栏   
  eole.Caption=″VFP应用程序调用Microsoft  Excel″ 
 
  7.给单元格赋值   
  eole.cells(1,4).value=XM(XM为数据库字段名) 
 
  8.设置指定列的宽度(单位:字符个数)   
  eole.ActiveSheet.Columns(1).ColumnWidth=5 
 
  9.设置指定行的高度(单位:磅)   
  eole.ActiveSheet.Rows(1).RowHeight=10.035 
 
  (设定行高为1厘米,1磅=0.035厘米) 
 
  10.在第18行之前插入分页符 
 
  eole.Worksheets(″Sheet1″).Rows(18).PageBreak=1 
 
  11.在第4列之前删除分页符 
 
  eole.ActiveSheet.Columns(4).PageBreak=0 
 
  12.指定边框线宽度(Borders参数如下) 
 
  ole.ActiveSheet.Range(″b3d3″).Borders(2).Weight=3 
 
  13.设置四个边框线条的类型 
 
  eole.ActiveSheet.Range(″b3d3″).Borders(2).LineStyle=1 
 
  (其中Borders参数:1-左、2-右、3-顶、4-底、5-斜、6-斜;LineStyle值:1与7-细实、2-细虚、4-点虚、9-双细实线) 
 
  14.设置页眉 
 
  eole.ActiveSheet.PageSetup.CenterHeader=″报表1″ 
 
  15.设置页脚 
 
  eole.ActiveSheet.PageSetup.CenterFooter=″第&P页″ 
 
  16.设置页眉到顶端边距为2厘米 
 
  eole.ActiveSheet.PageSetup.HeaderMargin=20.035 
 
  17.设置页脚到底边距为3厘米 
 
  eole.ActiveSheet.PageSetup.FooterMargin=30.035 
 
  18.设置顶边距为2厘米 
  eole.ActiveSheet.PageSetup.TopMargin=20.035 
 
  19.设置底边距为4厘米   
  eole.ActiveSheet.PageSetup.BottomMargin=40.035 
 
  20.设置左边距为2厘米  
  veole.ActiveSheet.PageSetup.LeftMargin=20.035 
 
  21.设置右边距为2厘米   
  eole.ActiveSheet.PageSetup.RightMargin=20.035 
 
  22.设置页面水平居中   
  eole.ActiveSheet.PageSetup.CenterHorizontally=.t. 
 
  23.设置页面垂直居中   
  eole.ActiveSheet.PageSetup.CenterVertically=.t. 
 
  24.设置页面纸张大小(1-窄行8511  39-宽行1411)   
  eole.ActiveSheet.PageSetup.PaperSize=1 
 
  25.打印单元格网线   
  eole.ActiveSheet.PageSetup.PrintGridlines=.t. 
 
  26.拷贝整个工作表   
  eole.ActiveSheet.UsedRange.Copy 
 
  27.拷贝指定区域   
  eole.ActiveSheet.Range(″A1E2″).Copy 
 
  28.粘贴   
  eole.WorkSheet(″Sheet2″).Range(″A1″).PasteSpecial 
 
  29.在第2行之前插入一行   
  eole.ActiveSheet.Rows(2).Insert 
 
  30.在第2列之前插入一列   
  eole.ActiveSheet.Columns(2).Insert 
 
  31.设置字体   
  eole.ActiveSheet.Cells(2,1).Font.Name=″黑体″ 
 
  32.设置字体大小  
  eole.ActiveSheet.Cells(1,1).Font.Size=25 
 
  33.设置字体为斜体  
  eole.ActiveSheet.Cells(1,1).Font.Italic=.t. 
 
  34.设置整列字体为粗体 
  eole.ActiveSheet.Columns(1).Font.Bold=.t. 
 
  35.清除单元格公式   
  eole.ActiveSheet.Cells(1,4).ClearContents 
 
  36.打印预览工作表  
  eole.ActiveSheet.PrintPreview 
 
  37.打印输出工作表   
  eole.ActiveSheet.PrintOut 
 
  38.工作表另为   
  eole.ActiveWorkbook.SaveAs(″ctemp22.xls″) 
 
  39.放弃存盘   
  eole.ActiveWorkbook.saved=.t. 
 
  40.关闭工作簿   
  eole.Workbooks.close 
 
  41.退出Excel   
  eole.quit 
 
  以上控制调用语句在中文VFP5.0企业版下运行通过,运行环境为Excel  97及中文Windows  98。