Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用VB.net自动化PowerPoint。有什么限制吗?_Vb.net_Vba_Powerpoint - Fatal编程技术网

使用VB.net自动化PowerPoint。有什么限制吗?

使用VB.net自动化PowerPoint。有什么限制吗?,vb.net,vba,powerpoint,Vb.net,Vba,Powerpoint,我来自vba,希望使用vb.net创建PowerPoint幻灯片。我阅读了msdn中有关Automation office的文档,但没有找到我的问题的答案:是否有任何限制?或者,我可以在创建powerpoint文档时使用vba的全部功能吗?简单地说,使用.Net中的ActiveX creator创建“powerpoint.Application”可以提供对COM对象的引用,该对象与powerpoint中的.Application完全相同 因此,您可以在.Net中使用Powerpoint VBA中

我来自vba,希望使用vb.net创建PowerPoint幻灯片。我阅读了msdn中有关Automation office的文档,但没有找到我的问题的答案:是否有任何限制?或者,我可以在创建powerpoint文档时使用vba的全部功能吗?

简单地说,使用.Net中的ActiveX creator创建“powerpoint.Application”可以提供对COM对象的引用,该对象与powerpoint中的.Application完全相同

因此,您可以在.Net中使用Powerpoint VBA中的.Application执行任何操作


(请注意,Powerpoint最大的限制之一是您只能在一台计算机上运行一个可执行文件实例。)

实际上,通过使用VB.NET/C,#您可以使用.NET平台本身的所有功能

在.NET中使用列表和集合要比在VBA中使用它们的对应项容易得多

此外,使用PowerPoint.Application对象,您几乎可以控制PowerPoint在PowerPoint中可以执行的任何操作(这同样适用于word、visio、excel、project等)


我在使用.Net进行办公自动化时看到的唯一限制是,您没有与文档进行相同的“紧密”集成。但是,如果使用VSTO创建加载项,此问题将消失。

是的,您可以使用从VBA了解的所有功能。此外,当您使用VSTO制作外接程序、模板等时,还有更多的可能性。。。但是,您需要使用VB.NET而不是VBA。如果我不需要嵌入在VB.NET中的ppt,我是否可以在没有ActiveX creator的情况下直接使用interop?能否请您解释一下与文档“紧密”集成的含义?据我所知,VBA中的部署比.NET/vsto中的部署容易得多。在vba中,您可以轻松直接地访问ThisPresentation、ThisDocument和ActiveSheet对象。VBA代码位于代码所在的“该”文档的上下文中。如果您要使用.NET,您可以拥有相同的访问权限,但这将意味着要与microsoft.office.excel.application.globals.activeworkbook混为一谈。(…)