主题:[原创]从当前任意dbf-table 到 xl-table的实现过程
jinlonggao
[专家分:17130] 发布于 2007-01-14 19:02:00
请版主请此贴清理掉!有孽障在哭丧,没法呆了[em20]
最后更新于:2010-01-25 17:01:00
回复列表 (共119个回复)
61 楼
jinlonggao [专家分:17130] 发布于 2007-12-28 10:31:00
=INKEY(0.1)
=INKEY(0.2)
上两句是等待键盘输入的函数,在此处作为延时之用,增强动态效果,你可以在代码中删除不用.
62 楼
passlake [专家分:50] 发布于 2007-12-28 16:28:00
谢谢高老师!
另外问个附加问题:我在EXCEL中“打开”一个VFP的表,第一次成功。(虽然格式难看点!)
但第二次就打不开了,提示未知格式,请问这是为何?
63 楼
jinlonggao [专家分:17130] 发布于 2007-12-29 17:27:00
没遇到过这种情况,所以不知道。
64 楼
jsddx [专家分:40] 发布于 2008-01-03 21:09:00
好贴
65 楼
cymjx [专家分:40] 发布于 2008-01-27 18:09:00
确实是好贴,顶起!
我是一个新手,用了感觉很好,但有一点想法,能否在字段数上有所选择。
66 楼
jinlonggao [专家分:17130] 发布于 2008-01-28 17:37:00
这是我整个应用系统一个组成部分,选择字段的工作在这之前由另一个功能组件完成.
67 楼
myww [专家分:1190] 发布于 2008-02-15 12:04:00
高老师,您好!
首先祝您鼠年万事如意,天天开心!
最近我买了一本“黑魔方”丛书之《Visual FoxPro 基础教程》,上面讲了一些转换的方法,但我觉得没您的这个方法好用。其中控制列宽的方法经修改后管用:
如将第三列设置为4个字符:
[color=FF0000]XLApp.Workbooks[1].Sheets[1].columns(3).columnwidth=4
[color=000000]将所有列设置为2个字符:[/color]
XLApp.Workbooks[1].Sheets[1].columns.columnwidth=2[/color]
但是,如何控制页面的“横向”“纵向”等,虽然excel本身可以方便的解决,可我想把这个程序作得非常周到,让使用者只须点一下,就可轻松实现打印。
《Visual FoxPro 基础教程》中是这样写的,但我如何修改也实现不了:
[color=0000FF]myexcel.activesheet.pagesetup.papersize=1 &&设置页面纸张大小(1:窄行8.5X11;39:宽行14X11)[/color]
如何才能控制页面,请老师有闲功夫时指教。
谢谢!
68 楼
jinlonggao [专家分:17130] 发布于 2008-02-15 18:24:00
首先祝myww先生新年快乐!
说实在,对您的问题我解答的积极性不高,因为,我每做一件事,考虑的是它的意义,没意义或意义不大的事我没积极性.
EXCEL的好处在于它的交互式操作的便捷性,如果用VFP代码把它的所有事性都做了,我可能就不会用它了,我之所以把DBF表转换为XLS表,就是要在EXCEL里交互地操作数据.否则,我直接用VFP的报表设计器(或用代码直接控制VFP的报表设计器完成报表输出可能更快捷).但快捷性和灵活性可能是一对矛盾.快捷了就不会灵活,灵活了就不会快捷,因为应用是千变万化的.所以我把DBF表转换成EXCEL表,目的就是让用户利用EXCEL交互操作的便捷性实现各自不用的应用目的.做为编程人员,应该给用户一点自主性,而不是大包大揽.
不要以为书上写的都是正确的,你说我的方法比书上写的好用,就是因为我有自已的主张,不能一味迷信书上的,书是人写的,难免有些...
不过,你若执意想知道如何通过VFP代码实现纸张纵横排版的设置,也是可以研究的,随后,我有功夫做出来了会贴上来.
69 楼
jinlonggao [专家分:17130] 发布于 2008-02-15 19:05:00
经过我的研究,myww先生可以参照下列代码完成页面设置:
XLApp.Workbooks[1].Sheets[1].pagesetup.papersize = xlPaperA3 && 设置页面大小为A3纸.当值为:xlPaperA4、xlPaperB4、xlPaperB5时分别为A4纸、B4纸、B5纸。但是,这些都是EXCEL常量,VFP并不认识,所以,必须把它们用具体的数值代替,页面为A3、A4、B4、B5时的数值分别为:8,9,12,13。
另外,当:
XLApp.Workbooks[1].Sheets[1].pagesetup.Orientation = xlPortrait
XLApp.Workbooks[1].Sheets[1].pagesetup.Orientation = xlLandscape
时,分别表示为纵排和横排,当然,xlPortrait和xlLandscape也是EXCEL的常量,VFP不认识,仍然要找到它们所代表的具体的值:1 和 2
70 楼
myww [专家分:1190] 发布于 2008-02-16 19:30:00
高老师,您好!
感谢您这么快就回帖,我非常感动!
您的研究成果我会及时用于实践,而且会在第一时间将效果告诉您。
我来回复