最近在工作中经常遇到客户反映批量导入数据时,提示导入的数据出错后,不能非常方便的定位到那些行的具体那些列的数据出现了错误。
于是公司专门组织了一次专题的讨论会议,想集思广益解决该问题。有一位同事做了一个用VS2012做了一个插件安装后会在Excel文件中显示出来,可以通过该
插件对Excel中的数据进行校验,并对出现错误的行和具体的数据项进行标示,方便用户定位错误。对于B/S架构的系统这样做的确可以比较好的解决这一问题。但是
如果是C/S架构的程序,我们可以直接在导入Excel时,对数据进行校验,然后将错误的数据也用类似的方法在导入的Excel中进行标示出来。这样也可以达到同样的效
果,而且还不用让用户安装插件。
也可以通过给用户提供的导入模版中,加入VBA的脚本,然后连接上webservice对导入模版中的数据进行校验也可以达到同样的效果,不过要求用户在打开Excel
导入模版时,已经将安全属性进行设置允许运行宏模版。
我们常规的作法是在导入验证时对出现错误的地方弹出消息进行提示,比如某行某列的数据校验出现了错误,但是缺陷是如果出错的数据比较多,则提示信息量大
而且不方便用户去查找,不够直观。
综上所述,以上几种方法,我们应该根据实际情况来使用。最简单的作法就是直接通过Message来提示,通过插件来进行的话则要考虑实际情况是否允许安装插件,
通过VBA则要用户会设置相应的安全属性,会对用户的系统安全产生影响,在系统中直接处理则会增加开发的工作量。