![]() |
1
9
Office VSTO在Office VBA上提供了大量的附加功能,虽然我不相信微软已经发出终止VBA的信号(事实上, they've said explicitly 它将至少在14号办公室之前存在;Office2007=Office12),我认为将应用程序迁移到VSTO以利用额外的灵活性和功能是非常值得的。
|
![]() |
2
7
VSTO有了新的功能,但与VBA相比也有一些主要的缺陷。 首先,代码访问安全性会使VSTO应用程序的部署变得困难(这是出于礼貌)。 另一方面,VSTO开发环境远不如VBA对“超级用户”开发人员开放。例如,没有宏记录器让您开始。 所有这些加上对现有VBA应用程序的巨大投资意味着VBA不会很快消失。 |
![]() |
3
4
VBA will be supported 展望可预见的未来,但他们也建议新的应用程序使用VSTO。 最新Mac版本的MS Office不支持VBA,64位Windows以虚拟32位进程外模式运行它。因此,如果您正在计划使用Office作为平台的新应用程序,VSTO是 还有一段路要走,但是您不应该太担心遗留支持。 正如@cori所指出的,对于微软来说,仅仅是猛拉支持并破坏这么多现有软件将是一个巨大的营销禁忌。 |
![]() |
4
3
自.NET首次发布以来,Microsoft一直在暗示Office的托管代码版本具有集成的VSTO(可能与VB6 IDE为VBA集成的方式相同,因此VS IDE将为VSTO集成)。 考虑到所涉及的编码量——考虑到这不会产生任何用户可见的功能——我非常怀疑这是否是微软优先考虑的问题。我可以想象,他们将一组托管的对象代码放在现有的代码库之上(就像Joel Spolsky在将VBA放入Excel时将一组COM对象放在现有的C代码库之上),并将一个新的IDE作为默认IDE插入,同时隐藏旧的IDE。甚至这也是一个重要的练习(想象一下编写宏记录器吧!)。当然,这将使.NET成为Office的预请求,Office团队只会在枪口下接受。 他们永远不会从产品中删除VBA,当然-Excel仍然支持Excel 4宏,Word仍然有WordBasic Automation对象来支持Word 6宏,而且没有任何一个被删除的迹象,因为有太多的遗留代码需要支持-十年来没有人使用过这两种编码模型。 如果微软真的在Office中安装了.NET环境(坦白说,我怀疑这种情况不会发生),那么他们可能会停止为新的Office功能添加VBA支持。这是他们最接近停止VBA的时候了。 |
![]() |
5
2
这是一个 comment from Microsoft 关于未来的VBA支持。简而言之,它不会在Windows版本的Office上消失(但在Mac版本上已停止)。 |
![]() |
6
2
http://www.microsoft.com/presspass/press/2008/may08/05-13MacBU2008PR.mspx ). 对于大多数地面人员来说,VBA和C XLL(以及VB6!!)仍然是首选工具。目前的.NET链接速度缓慢,并且没有提供任何生产力增益。第三部分工具(如ExcelDNA)在一定程度上缓解了这一痛苦,但显然Office的非托管C(和基于汇编程序)代码库并不容易与.NET兼容。 |
![]() |
7
2
VBA加载项的部署有点麻烦,但VSTO更麻烦。此外,VSTO还需要一些开销,因为它需要在运行代码之前启动CLR。 但最重要的是;VSTO消除了编写VBA的痛苦。 |
|
cwassmuth · 2坐标2D阵列之间的距离 6 年前 |
![]() |
john c. j. · 如何编辑和复制非VBA宏? 7 年前 |
![]() |
john c. j. · 如何实现多选? 7 年前 |
![]() |
Chaosbydesign · 如何从特定的表字段创建字典? 7 年前 |