Foxtable(狐表)用户栏目专家坐堂 → 导入校验


  共有1646人关注过本帖树形打印复制链接

主题:导入校验

帅哥哟,离线,有人找我吗?
有点色
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/5 13:00:00 [显示全部帖子]

1、表头检验有错?你的代码,如果不存在对应的列,就报错,没毛病啊。

 

2、可以用try Catch 检测错误

 

http://www.foxtable.com/webhelp/scr/2070.htm

 

3、导入之前,保存表,导入如果出错,就撤销所有操作 http://www.foxtable.com/webhelp/scr/1538.htm

 

     或者是,导入的时候,记录_Identify的值或者行号,如果出错,就删除对应的行即可。


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/5 13:34:00 [显示全部帖子]

 1、

 

If sheet(n1,bj1).value.Substring(0,2) <> "初中" AndAlso sheet(n1,bj1).value.Substring(0,2) <> "小学"

 

 2、直接return,或者你使用try Catch


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/5 22:41:00 [显示全部帖子]

1、多个条件的判断,每个条件单独一个if语句判断咯。不要用else

 

2、用一个变量终止。在你循环里面加入判断

 

If vars("终止") = true Then

    Return

Else

    Application.DoEvents

End If


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/6 0:35:00 [显示全部帖子]

vars("终止") = false

开始循环导入数据代码

If vars("终止") = true Then

    Return

Else

    Application.DoEvents

End If

结束导入数据代码

 

 

你的某个按钮代码: vars("终止") = true

 

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/6 0:38:00 [显示全部帖子]

导入慢的原因:

 

1、不要在循环里面用sqlfind;

 

2、尽量不要用 RaiseDataColChanged,你里面有可能还有 sqlFind 等耗时代码

 

3、尽量把 学生信息 一次性加载出来。

 


 回到顶部