如果你没有语言基础,并且想学习一门语言来处理Excel表格,那么我的建议是不要学VBA,也不要学Python,C#和
VB.net
任学一门就可以了,然后再学习点SQL的基础,基本上数据处理你就能搞定了,数据处理归根结底还是需要数据库支持,而不规范的表格数据注定不会有很多。
不建议学VBA理由
可能很多人会反对这个说法,我只能说适合自己的就是好的吧,VBA作为一种脚本语言至少是20年前的东西了,20多年来没有什么更新,不论是在语法上还是在理念上都和现代的
VB.net
、C#差异很大,基本上只适用于在office平台上解决些问题,对操作office有更好的支持,仅此而异;如果你学习的是一门现代的语言,不论是C#还是
VB.net
,通过第三方库操作office只是它的一种用法而已,能干的事情会更多,处理起来速度更快,效率更高,有人会拿VBA支持事件来说事,但是要知道但凡需要界面事件等来操作的,编制成软件后录入才是更好的方法,而不是在一个表格中折腾。
软件连接数据库非常容易,不论是C/S还是B/S模式,给用户的只是客户端界面,数据永远在公司服务器的数据库中,安全性更好,VBA想实现很难吧。
如果你已经会
Vb.net或c#
,那么也只是可以看得懂部分的VBA代码,能写点简单的,如果只会VBA,那么面对
VB.net和 c# 编程,基本上需要重头进行学习,原来的那些VBA知识基本上没用。
不建议学Python的理由
Python这两年很热很火,但是基本上不适合于普通用户使用,特别是在windows平台上,先说开发环境有很多不说,还有不同的版本支持,需要调用的第三方库,中间的各种不兼容等,如果对linux没一点了解,还是不要碰它,Python实现图像界面有一定的难度,不如C#友好,写好代码后制作成可执行软件用户交互差。
python的强大之处在于它的第三方库非常非常的多,通常只需要很少的代码量就能解决问题,但它对普通用户不友好。
c#和
VB.net
这个也是微软的亲儿子,VS的IDE说第二没人敢说第一,上手容易,界面也相当友好,通过简单拖拽就能做出一个图形界面,再引用第三方库
Spire.Xls
、NPOI等处理起来Excel更是方便快捷,你完全可以把Excel中的数据读入到DataSet中,然后在DataGrid中显示出来进行处理,或者在后端处理,也可以直接读单元格来处理,最后处理好的结果你是想保存到数据库中还是想存回原有的表格中,或者是根据某些条件批量生成大量的Excel文件,都是相当容易的事情。
最终想学哪个决定在自己,但是在学习之前找个VBA的手册和C#的手册都浏览一下,就明白自己该学习哪个了。