首页 » 软件开发 » 选VSTO,还是VBA,Python行吗?(编译开发加载都是人机)

选VSTO,还是VBA,Python行吗?(编译开发加载都是人机)

雨夜梧桐 2024-07-24 17:38:02 0

扫一扫用手机浏览

文章目录 [+]

1、Office是基于COM的。

2、所有与Office相关的开发都是基于其COM接口,VBA也不例外。

3、VB6开发的Office加载项,与C#、Python等开发的加载项,都是二进制的,类似DLL,可以加载到Office进程空间。
拿二进制的加载项和VBA比性能,都是耍流氓。

选VSTO,还是VBA,Python行吗?(编译开发加载都是人机) 软件开发
(图片来自网络侵删)

4、VBA图形化了Office的COM接口,是现成货里功能最全,使用上最方便,门槛也最低的。
VBA与VB共享一套内置函数和虚拟机,无需安装额外的开发环境,生人可从录制宏开始,从现象到本质,一路学起来。
拖一拖,点一点,比其他工具更容易激发出编程兴趣。
其他开发工具可以直接借鉴VBA来了解Office的COM接口。

5、VBA真正牛逼的,不是VBE的智能提示,也不是人家通俗易懂的语法,更不是所谓花枝招展的神技能,而是VBE的人机交互。

VBE的解释器,将Windows的人机交互发挥到了极致,至今VS、VIM等编辑器,都只能望其项背。
如果不理解Windows的人机交互,就无法理解Linux门下众多伸手党傻吊般的自信,当然更无法理解VBA为啥比很多码手年龄都大,还宝刀未老,说了N遍要被死,就是老不死。

VBA慢?人家慢是有道理的,你使用Office的GUI元素时,后台要处理若干窗口消息之类的不说,人家可是趁热给你翻译源码(相当于单步调试,但性能也不差啊),还要随时等你发号施令(暂停,修改,继续,再停,再改...,你VSTO来个?你Python也来个撒?VB6被很多人死硬了,但是人家却可以!
因为从4.0,VB就是VBA了,VB的真身是VBA,记住了哈)。
VBA慢不是因为解释器,而是你不知道如何让VBA语句变成二进制!
嗯,绝对是这个原因!

VBA咋快?自然是编译的最快,编译的代码越底层越快!
废话,这不VBA没法编译嘛?编译了还是VBA吗?其实VBA是支持编译的,因为VB就是VBA啊。
只需要改动1项注册表,在VBE中就可以编译VBA代码了。

所以,VBA开发Office的正确方式是解释和编译的组合,既能兼顾人机交互,又能保证性能。
更为关键的是,VBA编译的代码,不仅没有加载项启用的麻烦,还可以多线程和异步哦!

6、VB6只适应32位系统?搞笑,提个线索:64位Office上的VBA使用64位API,改了好多代码?

说VB不行的,是你不晓得咋拿锄头。
锄头是啥?锄头就是C。
VB就是C在Window上的图形化定制版本。

7、这下晓得了哇,再总结下:

Office加载项,类似于动态加载DLL那样的功能,是二进制的。
非VBA要和Office捆绑部署,都要通过加载项模式。

VBA才是Office环境下,正儿八经的开发语言。
欢迎关注本号,获取更多VB/VBA/Office高阶开发知识,也可关注其他平台同名号,获取更多不同维度的内容。

标签:

相关文章

语言中的借用,文化交融的桥梁

自古以来,人类社会的交流与发展离不开语言的传播。在漫长的历史长河中,各民族、各地区之间的文化相互碰撞、交融,产生了许多独特的语言现...

软件开发 2025-01-01 阅读1 评论0

机顶盒协议,守护数字生活的新卫士

随着科技的飞速发展,数字家庭逐渐走进千家万户。在这个时代,机顶盒成为了连接我们与丰富多彩的数字世界的重要桥梁。而机顶盒协议,作为保...

软件开发 2025-01-01 阅读1 评论0

语言基础在现代社会的重要性及方法步骤

语言是人类沟通的桥梁,是社会发展的基础。语言基础作为语言学习的基石,对于个人、社会乃至国家的发展具有重要意义。本文将从语言基础在现...

软件开发 2025-01-01 阅读2 评论0

粤语电影,传承文化,点亮时代之光

粤语电影,作为中国电影产业的一朵奇葩,以其独特的地域特色、丰富的文化内涵和鲜明的艺术风格,赢得了广大观众的喜爱。本文将从粤语电影的...

软件开发 2025-01-01 阅读3 评论0

苹果游戏语言,塑造未来娱乐体验的基石

随着科技的飞速发展,游戏产业逐渐成为全球娱乐市场的重要支柱。在我国,游戏产业更是蓬勃发展,吸引了无数玩家和投资者的目光。而在这其中...

软件开发 2025-01-01 阅读1 评论0