| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1078 人关注过本帖, 1 人收藏
标题:新手遇到点小问题,请大家帮助纠错,谢谢了
只看楼主 加入收藏
andyee
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2014-2-12
结帖率:75%
收藏(1)
已结贴  问题点数:20 回复次数:22 
新手遇到点小问题,请大家帮助纠错,谢谢了
上一个帖子在大家的指点下,我总算做了个我所需要的程序。
我试了N次,可以运行并且达到我要的效果。
请哪位大哥帮个忙,解决我以下几个问题:
1.使用zap命令,会有提示窗口,怎么才能不跳出窗口,默认选择“是”
2. for i=2 to nrows, 在这个循环之前,我想做判断行数<=1时,用messagebox(),并且退出循环。 我尝试了N次,都提示嵌套错误。
3.如有发现其他不妥的地方,还请大家直接纠正,谢谢。

if used('dylx') then
select dylx
else
select 0
use dylx
endif
zap
set defa to ('d:\data')
for m = 1 to adir(afiles,'*.xlsx')
    findfiles='d:\data\'+afiles[m,1]
    ? findfiles
    myexcel=CREATEOBJECT("excel.application")
    myexcel.visible=.f.
    mybook=myexcel.workbooks.open("&findfiles")
    usedrange=mybook.worksheets(1).usedrange
    nrows=usedrange.rows.count
   
    for i=2 to nrows
         m1=myexcel.cells(i,1).value               
         m2=myexcel.cells(i,2).value                 
         m3=myexcel.cells(i,3).value         
         m4=myexcel.cells(i,4).value                  
         m5=myexcel.cells(i,5).value            
         APPEND BLANK        
         REPLACE DATE WITH m1,SELLER WITH m2,BUYER WITH m3,quantity WITH m4,PRODUCT WITH m5
     endfor
       myexcel.workbooks.close
       myexcel.quit
endfor
       set defa to ('d:\vfp')
搜索更多相关主题的帖子: 大哥 
2014-02-18 22:17
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:10 
1.提示什麽,就針對什麽解決;
2.當nrows<=1時,for循環不會執行,不需判斷,不需退出。

授人以渔,不授人以鱼。
2014-02-18 22:34
andyee
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2014-2-12
收藏
得分:0 
回复 2楼 TonyDeng
版主,我发现一个问题
只要有一个文件,里面行数=2,就会报错,“date的值不能是 null”
什么是什么情况?
2014-02-18 22:40
qjbzjp
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:尧的故乡
等 级:贵宾
威 望:48
帖 子:1914
专家分:4397
注 册:2007-3-14
收藏
得分:10 
以下是引用andyee在2014-2-18 22:17:30的发言:

上一个帖子在大家的指点下,我总算做了个我所需要的程序。
我试了N次,可以运行并且达到我要的效果。
请哪位大哥帮个忙,解决我以下几个问题:
1.使用zap命令,会有提示窗口,怎么才能不跳出窗口,默认选择“是”

SET SAFETY OFF

相互学习,互相交流,共同提高。
2014-02-18 22:43
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用andyee在2014-2-18 22:40:45的发言:

版主,我发现一个问题
只要有一个文件,里面行数=2,就会报错,“date的值不能是 null”
什么是什么情况?

m1的值爲null,檢查當時Excel文件中Cell(2,1)的值。

授人以渔,不授人以鱼。
2014-02-18 22:44
andyee
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2014-2-12
收藏
得分:0 
回复 4楼 qjbzjp
谢谢
2014-02-18 22:49
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
我在很多帖子中説過不要隨便執行zap,不再重覆。

授人以渔,不授人以鱼。
2014-02-18 22:49
andyee
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2014-2-12
收藏
得分:0 
回复 5楼 TonyDeng
我把其中一个文件的内容改成一下这样,就会出错,但是我检查了,第二行的内容都正确的。

图片附件: 游客没有浏览图片的权限,请 登录注册
2014-02-18 22:53
andyee
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2014-2-12
收藏
得分:0 
回复 7楼 TonyDeng
恩,牢记的
我现在为了测试我每次抓取数据是否成功,所以每次清空表的内容
2014-02-18 22:56
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
回复 8楼 andyee
你怎麽知道第二行的内容正確?vfp中date字段的數據類型是日期型,有固定的格式,你這個是Excel格式化過呈現給人看的表面形式,用value讀出來的未必是可以轉換爲日期型的格式數據呀。在程序中檢查,把m1的值用messagebox()顯示出來看看。

授人以渔,不授人以鱼。
2014-02-18 22:59
快速回复:新手遇到点小问题,请大家帮助纠错,谢谢了
数据加载中...
 
   



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

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