Office中国论坛/Access中国论坛

标题: 微软终于要对VBA开刀了 [打印本页]

作者: jsxfygq    时间: 2017-4-7 14:08
标题: 微软终于要对VBA开刀了
消息可靠,office2016将是VBA存在的最后一版,下一版本取消VBA。微软真狠啊。
作者: tmtony    时间: 2017-4-7 14:09
呵呵。估计都会升到dotnnet
作者: roych    时间: 2017-4-7 14:09
然后推行Office 365?
作者: tmtony    时间: 2017-4-7 14:11
其实 移动版(RT)早取消了vba
作者: tmtony    时间: 2017-4-7 14:12
要么推宏 要么dotnet
作者: yyalm    时间: 2017-4-7 14:34

作者: yanwei82123300    时间: 2017-4-7 14:34
tmtony 老师什么是dotnet,谢谢!难道VBA真的末路了吗?谢谢
作者: roych    时间: 2017-4-7 14:56
yanwei82123300 发表于 2017-4-7 14:34
tmtony 老师什么是dotnet,谢谢!难道VBA真的末路了吗?谢谢

不必害怕。VBA死不了的。
.net是用来开发的。大部分公司也是desktop,真要放弃VBA的话,估计很多人会停留在2016版本上。
就像目前还有相当部分人用XP一样。你只是停止更新,我大不了不更新就是了。
办公或者开会时万一没连到网,那还开不开啊?
像win10为什么加上了开始菜单就是一个很好的例子。win8不是只有开始屏幕么?微软试图让用户习惯于触屏,所以改了win8,但结果大家不买账。所以win10又加回来了。
作者: yanwei82123300    时间: 2017-4-7 15:34
roych  谢谢老师的回答,感觉office版本越高离大家越远,access没有做细化,例如加入向sql的事务存储,日志等,毕竟做SQL的只有向您和论坛里的高手们!
作者: yanwei82123300    时间: 2017-4-7 15:37
还有OFFICE ACCESS的报表也没有升级细化
作者: tmtony    时间: 2017-4-7 15:45
微软就剩office用户了,如果再折腾,估计就什么都没有了:)
作者: jsxfygq    时间: 2017-4-7 17:04
net的winform不行了,呵呵,ASP.NET也被很多开源代替,你说的一点没错,再折腾就什么也没了,让微软死去吧,当年VB6慢慢升级,现在开发工具排行还真就是VB系统是老大。
作者: jsxfygq    时间: 2017-4-7 17:05
现在很多VB6开发人员都选择停留在此,NET对他们来说,开发传统窗口程序一点优势没有,还要带NET库。
作者: ganlinlao    时间: 2017-4-7 18:54
本帖最后由 ganlinlao 于 2017-4-7 19:09 编辑

其实很早就有迹象表明 废掉VBA是早晚的事,只不过是时间问题。

而这一切 随着微软强推 "uwp",会更加明显。也就是微软希望以后在windows运行的程序都是uwp版,能同时适应 pc,平板,手机(这基本废了)
谈起"uwp",也就不得不谈起winrt。注意 这个winrt 和经常说的Windows RT版是两回事,是完全不同的两个概念。winrt是win runtime.
uwp是winrt的一种进化,但本质依然是不变的。

winrt本质依然是com,而com依然是windows的核心基石。换句话说,winrt本质是一个iunknown接口,winrt所有的接口都是iunknown接口派生出来的。而com是真正跨语言的二进制编程规范。这和net framework有很大的不同。net和com的交互,非常有问题,至少目前微软也没办法拿出简单易用的解决办法。

winrt保留了iunknown接口,但去掉了Ole部分,也就是说去掉了 idispatch接口,ole部分涵盖的范围其实也是非常广的。activeX控件,IE和webbrowser都是属于ole技术产物,wsh和vbscript脚本组件,oledb数据库驱动……这些都会受非常大的影响,甚至要改头换面。

vba,vb6是直接支持idispatch接口也就是vba中的object,事实上vba和vb6是无法直接使用iunkonwn接口。winrt去掉了idispatch和ole也就同时去掉tlb类型库,众所周知,vba和vb6没有tlb类型库,是无法运行任何一行代码的。所以vba必死无疑。

在数据类型上,winrt提供语言无关的类型——integer(整数)、enumerations(枚举)、structures(结构)、arrays(数组)、interfaces(接口)、generic interfaces(泛型接口)、以及runtime classes(运行时类)。引入了被称之为HSTRING的新字符串类型,该类型允许在不进行任何数据复制的情况下,在应用程序与运行时环境之间传输字符串。
  每个winrt对象都会对应一些接口,其中有两个接口属于每个对象:IUnknown接口,熟悉的COM接口;以及IInspectable接口,用于根据对象所包含的元数据来发现有关该对象的信息。而元数据描述的文件是winmd

所以我们可以看到winrt和vba的数据类型有很多相似的地方,字符串由BSTR改成Hstring,类型库文件由TLB改成winmd,idispatch接口改成IInspectable接口

世事变化无常,依然“换汤不换药"。winrt依然是面向接口编程,跨语言继承永远只是一个传说。





作者: jsxfygq    时间: 2017-4-7 19:37
开发DELPHI的那个SB,本来DELPHI做的挺好的,跳槽到微软弄NET平台,现在好的,微软在NET平台上投入那么多钱,高不成低不就,你看,用NET开发的通过用软件,几乎没有,开发的C/S软极少;B/S网站被PHP、JS、PYTHON、RUBY承包,企业级和APP被JAVA平台承包,微软NET的生存空间几乎没有了。现在NET上的去下不来了,微软一向的强项就是易学易用,新民,如果这一点,把VBA放弃,那微软还有什么,现在他的CEO,那个印度阿三,和比尔差太多了,微软的的灵魂就是BASCE语言,被阿三弄个C#语言来代替,妄图用来代替JAVA,结果是为JAVA储备后备程序员。这局面也是醉了。。。。。。。。。。。
作者: Henry D. Sy    时间: 2017-4-7 19:46
Microsoft这是要赶用户上OSX的节奏!
作者: yanwei82123300    时间: 2017-4-8 08:41
使用印度三爷当CEO就是要将basic扔到猪圈里,抛弃了灵魂,微软也就没落了。
作者: zhengjialon    时间: 2017-4-11 09:12
要失业了。。。
作者: 风中漫步    时间: 2017-4-11 12:58
以后大家都在一条起跑线了,好象.....我也有可能成为大神哦,好激动
作者: lwwvb    时间: 2017-4-11 19:30
    虽然没有再在OFFICE做开发,但也很遗憾看到这样的局面。毕竟我在客户端开发中,不多不少也和OFFICE打交道。微软这样一改,我原来客户端的OFFICE代码也得改动,再说又要兼容旧的VBA,新的VSTO,会比较麻烦。
    幸好,我使用OFFICE的代码全使用类来包装,改动只是改一下类的实现即可。
    看到我现在用的工具,也不断在更新,但总体来说,总体以不变应万变,省下了不少麻烦。有时变得太多并不是好事,增加了不少的学习成本和兼容成本。
    感觉又一场VB6,VFP的故事在上演。。。。



作者: jsxfygq    时间: 2017-4-12 08:28
lwwvb 发表于 2017-4-11 19:30
虽然没有再在OFFICE做开发,但也很遗憾看到这样的局面。毕竟我在客户端开发中,不多不少也和OFFICE打交 ...

兄台现在用什么在开发?
作者: roych    时间: 2017-4-13 22:55
jsxfygq 发表于 2017-4-12 08:28
兄台现在用什么在开发?

就是你说的那个被微软挖走的SB以前开发的语言啊。
——Delphi
作者: 风中漫步    时间: 2017-4-14 13:57
曾经的钻石王老五也悲催了。目前看不出有特别出彩的语言或工具
作者: qingwen3003    时间: 2017-4-16 16:08
膜拜楼上的各位大神啊
作者: lwwvb    时间: 2017-4-16 22:17
创造C#和DELPHI的大牛,于当时的环境,选择跳到微软,是合情合理的选择。换作是你或我,都会这样做。毕竟人向高处走。有些事也不是他说了算。还是BOSS说了算。
不过现在DELPHI在新东家,也活得不错。我们不能期待什么都是完美无瑕,既然选择了,就要接受事物的优缺点。
作者: 轻风    时间: 2017-4-18 08:20
好不容易找了一个我勉强能用的开发工具,唉!




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3