Tag: 加载项

我的Shared Add-in构造函数有什么问题?

早上好,研究员们: 我目前正在尝试修复从以前的开发人员inheritance的Excel共享加载项的几个性能问题,基本上我试图find加载项的东西如何在Excel内部工作,这意味着我已经在网上search信息我的理解是: 在registry中,LoadBehaviour应该设置为3 打开事件期间的Excel工作簿应该先加载VBA项目中引用的所有加载项 一旦打开文档,我的加载项就可以被VBA代码使用。 现在我将Log4Net添加到加载项中,好奇的是我看到了下面的行为 在Excel工作簿中的打开事件期间,有一个全局variables Public myAddin As Object Set myAddin = New TradingAddin.TradingAddin 因此调用C#类的构造器。 几秒钟后,构造函数被调用一次,所有的IDTExtensibility2方法OnConnection,OnDisconnection等被调用。 我以为,一旦Excel加载加载项,它应该是可用的VBE代码,我可以写类似的东西 Set myAddin = Application.COMAddins.Item("Trading").Object 但是它返回Nothing并且调用Class的构造函数两次销毁在Excel工作簿生命期内应该在内存中可用的C#对象内保存的任何状态。 更新: 该平台是Visual Studio 2005 Team Edition,目标应用程序是Excel 2003,并且加载项是共享加载项。 我没有使用VSTO。 我试图在VBA中调用的实际代码是 Set addIn = Application.COMAddIns.Item("K2Trading.K2Trading").Connect Set managedObject3 = addIn.Object <— This value that I thought was an Instance of the Add-in is equal […]

C#。 Excel Addin。 无法重新定位浮动自定义任务窗格

创build自定义任务窗格( _CustomTaskPane MSDN )并将其DockPosition设置为浮动时,我想要指定出现的窗口的顶部和左侧属性。 由于Office COM API不提供直接执行此操作的可能性,因此人们build议更改CommandBar相应属性的值: var application = (_Application)_nativeTaskPane.Application; application.CommandBars["Task Pane Title"].Top = top; application.CommandBars["Task Pane Title"].Left = left; 在上面的代码中,我假设 1)_nativeTaskPane是我的实例_CustomTaskPane(实际上它是Microsoft.Office.Core.CustomTaskPane) 2)_Application是Microsoft.Office.Interop.Excel._Application 当然,在设置Visible = true之后,我正在做这件事。 即使订阅了任务窗格的VisibleStateChange也更加确定。 不过,我得到一个与HRESULT E_FAILED的COMException。 事情是我可以在debugging时读取这些属性(Top&Left),但是设置它们会引发exception。 看起来问题至less在互联网上popup几次: 1) http://www.add-in-express.com/forum/read.php?FID=1&TID=5595 2)[/ url] 3)[http://www.visualstudiodev.com/visual-studio-tools-for-office/need-location-of-custom-task-pane-45822.shtml] 解决方法是使用Windows API。 但是,任何人都可以解释使用CommandBar方法可能是错误的? 也许我可以“重新configuration”这个Top / Left-setters工作,没有例外。

在Excel加载项中实现AppSheetChanged时启用撤消

我只注意到,当在Excel加载项中实现AppSheetChanged事件处理程序时,Ctrl-Z(撤消)function不起作用。 任何想法如何使这项工作?

自动安装Excel VBA加载项

我写了excel VBA加载项文件(.xlam)。 我也有一个导出的function区定制(.exportedUI)。 我如何创build一个安装程序,以便我的用户可以运行安装程序来安装Excel VBA加载项和function区定制?

我怎样才能使用.xla文件中的代码从Excel VBA压缩文件?

我需要能够在Excel VBA函数中GZip压缩文件。 具体而言,我需要能够使用'deflate'algorithm。 有没有办法做到这一点,而不必执行一个命令行应用程序? 不依赖于外部工具,代码将更加健壮。 理想情况下,代码将使用预先安装的VBA或COM库函数 – 我不想自己实现这个逻辑或安装DLL等。 如果可能的话,我想要安装这个function就像在可用的Excel加载项中添加一个.xla一样简单。 没有DLL,EXE,registry项等要求。 编辑我可以使用.NET GZipStream来做到这一点?

xla vs xlam插件,有什么区别?

有人可以解释一个xla Excel插件格式和一个xlam Excel插件格式之间的区别吗? 谷歌search没有提供任何有用的。

基于F#或C#的Excel加载项在OSX上

我有一些方便的Excel加载项在Windows下的Excel下运行,我真的想要生成与OS X上的Excel一起使用的加载项的版本。在Windows下,我使用奇妙的Excel-DNA包让我调用我的基于.Net的VBA逻辑。 但是,在我的Mac上,我甚至很难从编写,打包,部署,然后调用基于C#或F#的加载项中find一个起点。 或者是有一些非VBA我可以重写我的加载项,所以他们将在Windows和OSX上运行? 我向Scala,Python或其他任何能够提供所需可移植性的开放式平台开放。 我可以从2011年在这里看到一个post,所以我写了希望,自2011年这种types的最后一个查询以来,事情已经取得了进展。

Excel插件开发环境

如果我想用C ++构build一个excel插件。 Visual Studio开发环境中是否有开源/免费软件? 谢谢 院长

Delphi Excel COM-Addin

我在Delphi 2006中写了一个MS Excel COM-Addin。我在我的开发机器上安装了Excel 2007。 我作为一个ActiveX库开始项目,然后从Delphi ActiveX项目菜单中添加一个自动化对象。 在我的自动化对象中,我定义了IDTExtensibility2接口 IDTExtensibility2 = interface(IDispatch) ['{32E456FC-C710-43AA-9ACA-DDE8F132B91B}'] function OnAddinsUpdate(var w_Custom: OleVariant): HResult; stdcall; function OnBeginShutDown(var w_Custom: OleVariant): HResult; stdcall; function OnConnection(const w_Application: IDispatch; w_ConnectMode: Integer; const w_AddInInst: IDispatch; var w_Custom: OleVariant): HResult; stdcall; function OnDisconnection(w_DisconnectMode: Integer; var w_Custom: OleVariant): HResult; stdcall; function OnStartupComplete(var w_Custom: OleVariant): HResult; stdcall; end; 并在从TAutoObject派生的类中实现接口。 在我打电话的单位的初始化部分 […]

如何从Perl或命令行激活Excel加载项?

(请原谅我对Excel加载项的无知,并在适当的地方随时纠正我的teminology。) 我有一个定期使用的Excel加载项。 此加载项插入一个工具栏与一些button。 我想自动完成在Excel中打开电子表格的任务,然后“单击”其中一个button。 换句话说,我想使用Perl(或命令行)来激活此加载项的特定function。 我无法立即访问加载项的源代码,但是我可以根据需要请求特定的信息,如过程名称。 我不能使用CPAN模块来完成这个任务 – 只有与我的ActivePerl版本一起安装 – 但是我有Win32 :: OLE ,这对其他Office自动化有帮助。 任何指针?