|
|
发表于 2012-2-27 19:56:05
|
显示全部楼层
来自: 中国辽宁
8# xuexi520 0 K% Z8 b: G+ ^" O2 A6 t6 Q1 p" p
个人认识,VB6.0及以前版本与VBA并没有本质的区别.VBA差不多就是嵌入应用程序对象的VB5.0.通俗点说,VB6.0及以前版本是一个独立的编程工具,当它做为一个模块与某个应用程序结合到一起的时候就成了VBA.VB6.0及以前版本是基础,VBA是应用.或者说,VB6.0及以前版本是骨头,应用程序类库是肉,结合到一起就是VBA.VB6.0及以前版本与哪一个应用程序结合到一起就是哪一个程序的VBA.VB6.0及以前版本与VBA是触类旁通的关系.所以不存在先学哪一个的问题.
4 K9 f$ g' I! `: S0 P- mVB.net版本则与上不同,.net版本全部面向对象编程,语法有些变化(很小),与VBA不同.
& e+ T. N# t, C0 R真正的问题是VBA据说是32位单线程的,微软不再升级VBA支持64位多线程,基于.net的64位替代工具微软也迟迟没有推出.VBA前景未卜.% }* R6 Z. W$ T# p( i
不过去年我为朋友在WIN7下安装过64位ACAD,也安装了VBA模块,没发现问题.
8 x! y+ D# i% o所以个人建议,学习ACAD的VBA,可以从VB6.0入手,再学习ACAD的对象模型,同时也可以学习WORD,EXCEL等其它大型工具软件的对象模型,就可以用VBA做该应用程序的二次开发了.如果需要的话,再留意一下VB.net,一旦微软推出它的面向应用程序版本,就可以随之升级. |
|