| 网站首页 | 业界新闻 | 小组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 165 人关注过本帖
标题:vfp通过oledb连接excel,如何显示进度?
只看楼主 加入收藏
gxbsdzf
Rank: 2
等 级:论坛游民
帖 子:23
专家分:23
注 册:2019-11-26
结帖率:100%
  已结贴   问题点数:20  回复次数:3   
vfp通过oledb连接excel,如何显示进度?
连接代码如下:
connxls=CREATEOBJECT('adodb.connection')
connxls.OPEN('Provider=Microsoft.Ace.OleDb.12.0;Extended Properties="Excel 12.0; HDR=Yes; IMEX=1";data source=d:\123.xlsx')
这个123.xlsx很大,有12个工作表(sheet),每个表有6万行左右。用户经常要读取这样的大表。原先调用CREATEOBJECT('excel.application')打开,花了十几分钟。后改用上面的oledb连接方式,open()这句用了50多秒,虽明显提速了,但也还有近一分钟的干等过程,用户体验仍然不好,就想加个能显示进度状态的东东。尝试过几种方式,结果发现完全没法呈现,这个过程完全把程序锁定了,什么时钟、动画图等等都“冻住”了。现在只能姑且加一句“正在连接excel,请等待……”。

大伙有什么高招吗?如何能让界面有一点动的东西出来,避免这种假死的状态?
connxls.OPEN()这句有没有返回值、状态值或者其他能拿来做进度的数据?

额外问一下:听说POI读写excel更快,能否用于VFP?怎么调用?先谢谢大家!

[此贴子已经被作者于2019-12-2 16:51编辑过]

搜索更多相关主题的帖子: 连接 显示 vfp excel 进度 
2019-12-02 16:44
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:221
帖 子:6817
专家分:30152
注 册:2014-5-20
  得分:2 
要快,没有通式,要看取EXCEL文件的具体内容。
2019-12-02 17:20
sostemp
Rank: 2
等 级:论坛游民
威 望:1
帖 子:38
专家分:56
注 册:2009-6-2
  得分:2 
把压缩包发上来,大伙试试
2019-12-03 08:32
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:366
帖 子:11491
专家分:42723
注 册:2006-5-13
  得分:16 
VFP是单进程的,无法做到同时做两样事。

活到老,学到老! http://www. E-mail:hu-jj@
2019-12-03 12:47
快速回复:vfp通过oledb连接excel,如何显示进度?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.066241 second(s), 9 queries.
Copyright©2004-2019, BCCN.NET, All Rights Reserved