VBA 的未来是啥? [关闭]
Posted
技术标签:
【中文标题】VBA 的未来是啥? [关闭]【英文标题】:What Is the Future of VBA? [closed]VBA 的未来是什么? [关闭] 【发布时间】:2010-11-09 21:28:32 【问题描述】:随着新的 2007 版本的 MS-Office,微软开始用VSTA“威胁”VBA。由于 VBA 非常普遍,您认为它在未来 3-5 年的脚本开发方面的未来是什么?
或者,会不会像VB6那样突然被杀掉?
Autodesk 在听到 MS 的消息后也 dropped it(有点)。
【问题讨论】:
VBA 仍然是唯一有意义的 MSACCESS 编程方式。 @John:很有趣。没有人想要 VSTA。 VBA 来自微软,它被有效地使用。非开发人员也可以轻松使用它。为什么人们会要求 VSTA,当它在一天结束时使用 COM 互操作? 这就是为什么有人可能需要 VBA,而不是为什么有人可能想要它。如果 Office 2010 使用 VSTA 而不是 VBA,会有人伤心吗? @ldigas:我确信 VBA 会像 VB6 一样迅速消失。哦,等等,你的意思是 VB6 还在?也许 VBA 也会如此。 供您使用的 .net 框架并非免费提供。它有其自身的复杂性。仅仅因为 MS 将放弃支持,部分开发人员/公司需要时间、金钱和学习才能升级到某些东西。我的意思是 - 如果人们正在使用功能有限的解决方案 - 为什么他们需要关心 .net 框架? 【参考方案1】:我建议不要突然杀死 VB6。也许是官方的 MS 支持,但社区对于VB6 和 VBA 仍然是活跃的。
与拥有广泛用户/客户/第 3 方供应商基础的任何技术一样,VBA 作为一种脚本技术需要很长时间才能逐渐消失。我想它的继任者需要数年时间才能完全超越 VBA。
【讨论】:
是的,但是随着新操作系统的缓慢推出,它正在走向最后的杀戮。我不知道有谁成功地将他们的 VB6 东西从 XP 合并到 Vista,并且运行得相当好,而不考虑只切换到 .NET 并重写整个东西。 聪明人。跑得有点晚,但很聪明。 希望你不要说我是白痴;)【参考方案2】:同意 Dick Kusleika 关于部署的意见
弃用 VBA 的问题是:
-
易于部署
Visual Studio - 另一个值得学习的 IDE
对于庞大的工作、业务关键型 VBA 应用程序,.NET 不会添加任何内容,为什么要花费精力和时间进行迁移?
使用 VBA,非开发人员可以在 Excel/Word 等中快速构建有用的应用程序。而 .NET/VSTO 则无法做到这一点。
【讨论】:
所有点都在目标上。现在是 2018 年,我正在使用 VBA 进行编码。【参考方案3】:它会消亡,IMO,但不会突然消亡。 Excel 曾经有一种称为 XLM 的宏语言 - 基本上是一种使用类固醇的键盘播放。 XLM 仍然受支持,并且很容易有十几个人在使用它。这就是为什么我认为 VBA 会存在很长一段时间的原因。它不会被更新、支持,甚至可能不会被承认,但它会可用。
MS 迟早会将 .NET 与 Office 应用程序集成,而关注 VBA 的人会越来越少。现在,我可以将一些 VBA 放入 Excel 电子表格中,将其发送给客户端,然后部署就完成了。我可以告诉 IT 部门这是一个带有宏的 Excel 工作簿,他们不会感到受到威胁,因为他们不知道更好。当 .NET 具有如此简单的部署选项时,我将使用它。那一天将会到来,VBA 将慢慢开始消失。
【讨论】:
是的,你是对的。但是,现在有点过时的 .xlm 是 Excel 的本地文件。至少在我的情况下,VBA 分布在多个应用程序中,我们经常使用它来互连这些应用程序(例如,从 excel 到 autocad 的表格和坐标)。这是该更改的另一个方面 - 即使您更改它 (MS),所有其他供应商仍然必须进行更改。【参考方案4】:语言发生了变化,完成工作的方式(即拖放表单、创建宏、修改几行就完成了)也将发生变化。
它不会一直是一个工具,非开发人员会发现它很容易使用。
基本的东西(工作簿、工作表、范围)等的对象模型应该保持不变。 将添加一组新事物,这将改变对象模型并因此产生新的学习(例如功能区界面)
别忘了,.net 带来了自己的概念/复杂性。
【讨论】:
是的,我同意。为什么总是当你发现一个非开发人员觉得易于使用的概念时,你就会想改变它。由于这个原因,VB6 和 VBA 是非常有成效的东西(其他一些也是如此,但这是主要的)。以上是关于VBA 的未来是啥? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章