vfp如何将报表输出到EXCEL啊?

 我来答
匿名用户
2013-09-12
展开全部
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(″c:\temp\ll.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=1/0.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(″b3:d3″).Borders(2).Weight=3

13.设置四个边框线条的类型
eole.ActiveSheet.Range(″b3:d3″).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=2/0.035

17.设置页脚到底边距为3厘米
eole.ActiveSheet.PageSetup.FooterMargin=3/0.035

18.设置顶边距为2厘米
eole.ActiveSheet.PageSetup.TopMargin=2/0.035

19.设置底边距为4厘米
eole.ActiveSheet.PageSetup.BottomMargin=4/0.035

20.设置左边距为2厘米
veole.ActiveSheet.PageSetup.LeftMargin=2/0.035

21.设置右边距为2厘米
eole.ActiveSheet.PageSetup.RightMargin=2/0.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(″A1:E2″).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(″c:\temp\22.xls″)

39.放弃存盘
eole.ActiveWorkbook.saved=.t.

40.关闭工作簿
eole.Workbooks.close

41.退出Excel
eole.quit
匿名用户
2013-09-12
展开全部
SELECT 日销累计
puname=PUTFILE([请输入文件名:], [],[xls])
if len(allt(puname))=0
wait window "没有输入文件名,不能导出"
else
wait window nowait "请稍候,正在导出EXCL表格中……"
copy to &puname. TYPE XL5
wait window nowait "导出完成"
endif

简单,实用
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-09-12
展开全部
不能单独运行的:
贴个简单的
IF MESSAGEBOX("确定要导出数据吗?",4+32,"提示")=6
m.outfilename=PUTFILE("excel文件名:","表","xls")
ENDIF

ef=CREATEOBJECT("Excel.application")
ef.workbooks.add
ef.worksheets('sheet1').activate
ef.visible=.t.

WITH ef.range("a1")
.value="表"
.font.size=12
.HorizontalAlignment =3
ENDWITH

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

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式