|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
数据库技术
→
『 VFP论坛 』
→ VFP对EXCEL读操作,如何防止用户另外启动EXCEL而造成错误。
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
3136
人关注过本帖
标题:
VFP对EXCEL读操作,如何防止用户另外启动EXCEL而造成错误。
只看楼主
加入收藏
hu9jj
来 自:红土地
等 级:
贵宾
威 望:
400
帖 子:11857
专家分:43421
注 册:2006-5-13
结帖率:
99.55%
楼主
收藏
已结贴
√
问题点数:100 回复次数:46
VFP对EXCEL读操作,如何防止用户另外启动EXCEL而造成错误。
今天周日,本版块很冷清,发个问题活跃一下气氛,请各位献计献策:
我在VFP中逐行对EXCEL文件进行读操作的过程中,倘若另外又打开其他的EXCEL文件,读操作就会返回一个不确定的值,造成读入的数据不正确,甚至会因为数据类型不一致而造成程序运行错误。请问各位有没有好办法来解决这个问题。难道只有先将EXCEL全部导入到DBF中再作进一步处理这条路可走吗?
搜索更多相关主题的帖子:
数据
EXCEL
今天
如何
用户
2012-05-06 16:57
举报帖子
使用道具
赠送鲜花
wengjl
等 级:
贵宾
威 望:
109
帖 子:2214
专家分:3882
注 册:2007-4-27
第
2
楼
收藏
得分:15
VFP好像无法控制用户手工打开EXCEL的操作
只求每天有一丁点儿的进步就可以了
2012-05-06 18:05
举报帖子
使用道具
赠送鲜花
lygcw9603
等 级:
职业侠客
威 望:
1
帖 子:233
专家分:357
注 册:2006-8-27
第
3
楼
收藏
得分:15
在读操作前,检查是否有EXCEL打开,如果有,提示用户关闭EXCEL。或者用代码强制关闭EXCEL。这类代码网上有。
2012-05-06 18:51
举报帖子
使用道具
赠送鲜花
xs591222
等 级:
贵宾
威 望:
28
帖 子:682
专家分:1299
注 册:2009-3-1
第
4
楼
收藏
得分:20
在读操作前,检查是否有EXCEL打开,如果有,提示用户关闭EXCEL。这个容易实现,本论坛上就有。
有一次我的vfp在导入EXCEL数据,由于花时较长(5分钟以上),自己突然想到其他问题打开了EXCEL操作,完了关闭,结果导致VFP导入EXCEL失败,因为EXCEL被意外关闭。
电脑时代,有一句响亮的口号:没有做不到,只有想不到。
要实现楼主的想法, 我想从原理上说,应该是可以实现的,VFP在使用EXCEL前除了“在读操作前,检查是否有EXCEL打开,如果有,提示用户关闭EXCEL。”外,要做一步向windows提出一个申请,在我VFP使用EXCEL期间,请求windows禁止EXCEL被其他系统(用户)再打开。在VFP完成工作后,要注销这个申请。
这个申请和注销申请的代码我就不会了。我猜想,这个申请代码会因windows版本的不同,而不一样吧! 高手们可能是轻而易举的。
盼高手提供代码!谢谢!
2012-05-06 19:24
举报帖子
使用道具
赠送鲜花
hu9jj
来 自:红土地
等 级:
贵宾
威 望:
400
帖 子:11857
专家分:43421
注 册:2006-5-13
第
5
楼
收藏
得分:0
楼上的思路不错!
活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2012-05-06 22:16
举报帖子
使用道具
赠送鲜花
TonyDeng
等 级:
贵宾
威 望:
304
帖 子:25859
专家分:48889
注 册:2011-6-22
第
6
楼
收藏
得分:20
回复 楼主 hu9jj
这应该是你启动Excel用了同一个进程造成的
授人以渔,不授人以鱼。
2012-05-07 01:29
举报帖子
使用道具
赠送鲜花
hu9jj
来 自:红土地
等 级:
贵宾
威 望:
400
帖 子:11857
专家分:43421
注 册:2006-5-13
第
7
楼
收藏
得分:0
应该是这样的原因。
如果是在对EXCEL进行操作之前已经有打开的EXCEL文件,则VFP建立的EXCEL对象就不会与之前用户打开的EXCEL文件相互干扰,如果VFP打开的EXCEL文件已经被用户打开,则VFP打开的只能是只读,对读入数据没有影响。
如果用户之前没有打开过EXCEL文件,而是在VFP对EXCEL进行操作的过程中打开EXCEL文件,就会对读操作有影响了。那末该如何设置让用户在新的进程中打开EXCEL文件呢?或者按照4楼的思路也应该可以解决问题。
关于是否使用同一个进程很容易区别,退出一个EXCEL窗口时,同一进程中的其他EXCEL文件都会被关闭,不同进程的EXCEL文件则不受影响。
活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2012-05-07 06:58
举报帖子
使用道具
赠送鲜花
TonyDeng
等 级:
贵宾
威 望:
304
帖 子:25859
专家分:48889
注 册:2011-6-22
第
8
楼
收藏
得分:0
VFP打开了的文件,别的用户可以用非只读方式打开它?
授人以渔,不授人以鱼。
2012-05-07 07:10
举报帖子
使用道具
赠送鲜花
hu9jj
来 自:红土地
等 级:
贵宾
威 望:
400
帖 子:11857
专家分:43421
注 册:2006-5-13
第
9
楼
收藏
得分:0
是VFP打开了已经打开的EXCEL文件时,通常不会提示错误,而是以只读的方式打开。
活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2012-05-07 07:20
举报帖子
使用道具
赠送鲜花
TonyDeng
等 级:
贵宾
威 望:
304
帖 子:25859
专家分:48889
注 册:2011-6-22
第
10
楼
收藏
得分:0
打开之后检查一下文档的ReadOnly属性呗,在Excel中查一下这个属性叫什么名字,一定有的。其实,此时文档已经是只读的,也不会影响什么数据。
授人以渔,不授人以鱼。
2012-05-07 07:23
举报帖子
使用道具
赠送鲜花
47
1/5页
1
2
3
4
5
快速回复:
VFP对EXCEL读操作,如何防止用户另外启动EXCEL而造成错误。
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.047402 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved