Tag: excel addins

需要在使用方法的项目中引用Excel 2007 vba插件?

我有一个Excel 2007插件(一个工作簿与macros保存为插件)似乎需要其他书籍参考,才可以调用其方法。 这是正常的吗? 我认为公共的插件代码可以从任何地方调用? 有没有一种方法可以打开所有的工作簿,而无需创build明确的参考? 我也在function区定制插件,并希望确保这些也将工作。

从Excel加载相关的DLL

我们有一个库(XLL文件),我们通过Excel自动从C#代码通过RegisterXLL方法从networking驱动器加载到Excel。 最近我们切换到VS2010,现在,而不是我们的库单一的xll它需要加载msvcp100.dll和msvcr100.dll(我们看到它在依赖沃克)。 如果PC安装了VS2010就可以,那么这些文件位于C:\ WINDOWS \ system32 \文件夹中,但是对于普通用户来说则不是这样。 我们不能把这两个文件分发给他们。 如果我们把这些文件放到同一个networking文件夹中,它们将不会从那里加载。 有什么办法强制Excel加载我们的库时,同时加载这些文件?

在Excel 2011中为Excel添加Excel

如果我在我的MAC机器(OS X Lion)上使用Excel(Office 2011),如何创buildExcel的AddIn。

如何使Excel自动检测正在使用什么是加载项?

我为excel工作簿编写了一个加载项* .xlam。 我已经在我的电脑上testing过了,没关系! 但是,当我将该文件复制到另一台计算机上时,单元格中的公式行为exception – 它们的前缀为“C://path/test.xlam”! |原始公式| 自动通过Excel。 如何使Excel不改变我的公式?

以编程方式重新加载Excel加载项

我有一个Excel插件,有很多function。 在标题为“configuration设置”的function区中,我有一个button,允许用户select是否允许某些选项(无论是右键单击菜单,还是显示function区上的某些button)。 我知道定义一个右键单击菜单或devisefunction区的唯一方法是在excel插件的启动。 我有一个configuration文件,加载检查,但如果用户使用我的function区button更改configuration,它没有任何效果,直到Excel重新打开或用户手动重新加载插件。 有没有办法做到这一点编程?

Excel工作表SelectionChange事件不会被第一次触发,但第二次工作

我在我的excel插件中有一个winform对话框,点击面板buttonpopup。 我有一个select更改事件添加到工作表。 事件不是第一次被解雇。 我必须closures对话框并再次打开它,这次它将工作。 我在这里错过了什么,或者它是与Excel Interop API的错误? 环境:Excel 2007,.NET 4.0,Interop运行时:v1.1.4322 以下是代码 public partial class CreateColumn : Form { public CreateColumn() { InitializeComponent(); Excel.Worksheet ws = Globals.ThisAddIn.Application.ActiveSheet; //Bug: this event does not fire the first time.. works on second time. ws.SelectionChange += new Excel.DocEvents_SelectionChangeEventHandler(ColRangeSelChange); } public void ColRangeSelChange(Excel.Range target) { System.Windows.Forms.MessageBox.Show(target.AddressLocal); }} 这是如何创build列被调用 private void smartTemplateBtn_Click(object […]

Excel VBA – 命令栏 – 更改variables的属性?

在我正在进行的创造这个简单的插件工作的战斗。 我现在决定使用命令栏中的命令button打开和closures提醒,这是我下面的代码。 Private Sub App_WorkbookOpen(ByVal Wb As Workbook) Dim cmbBar As CommandBar Dim cmbControl As CommandBarControl Set cmbBar = Application.CommandBars("Worksheet Menu Bar") Set cmbControl = cmbBar.Controls.Add(Type:=msoControlPopup, temporary:=True) 'adds a menu item to the Menu Bar With cmbControl .Caption = "LLE Encryption Reminder" 'names the menu item With .Controls.Add(Type:=msoControlButton) 'adds a dropdown button to the menu […]

C#Excel COM加载项的devise结构

我正在构buildExcel 2007+的COM加载项,这将是一个应用程序的意义在于: 它在function区上有自己的选项卡,并带有控制其操作的button(如“创build新计划工作簿”/“刷新工作簿”等) 它会从Excel(“应用程序”和“工作簿”)中捕捉事件并对其执行操作。 它应该有一个基于上下文的任务窗格,并将从我的插件发送给它的数据。 为了支持这一点,我想以这样一种方式来构build代码,以便我将来可以很容易地对其进行修改(例如,在function区上添加一个新button),而不是到处都有意大利面条。 我最初的想法是创build一个单独的类,这将是我的“Addin应用程序”,并初始化与Excel应用程序本身,例如: public class Connect : Extensibility.IDTExtensibility2 { private Excel.Application _excelApplication; private MyAddinApplication _myAddinApplication; public void OnConnection(Object application,…) { _excelApplication = (Excel.Application)application; _myAddinApplication = new MyAddinApplication(_excelApplication); } } 这个MyAddinApplication类将会捕获Excel的事件(比如打开一个工作簿,closures等),然后相应地处理它们。 它还会捕获任何Ribbon事件或callback,然后根据命令模式触发操作。 我的问题是,这是一个Excel COM插件的合理方法? 将Excel应用程序封装在由“Addin Application”类引用的单独的“事件处理程序”类中会更好吗? 我没有真正看到我的研究中的复杂COM插件,只有那些有一个或两个button或不捕捉任何事件。

如何设想Excel是由自动化(VSTO Addin上下文)

我尝试解决以下问题。 语境: 我正在运行一个VSTO Excel应用程序上下文插件,当MS Excel由其他可视化模式下的自动化进程启动时,我也会加载我的插件。 所以,现在需要知道MS Excel是否是由其他进程自动启动的 的CreateObject() ExcelApplicatoin.Visible = true (“/自动化embedded”) 现在,我评估以下Excel属性: ThisAddIn.Application.UserControl 但是,当MS Excel在CreateObject期间启动时,属性也是“False”。 有没有人有任何想法来解决这个问题? 我没有其他物业发现解决这个问题。 提前致谢, Sukram。

在Excel VBA中从用户定义的范围中推导出列

编辑:@TimWilliams我编辑代码如下,但它现在不运行。 有什么想法吗? Sub Item_Fix() Dim rng As Range, col As Range, arr Dim sht As Worksheet, c As Range, tmp On Error Resume Next 'in case user cancels Set rng = Application.InputBox( _ Prompt:="Please select the Items to update. " & _ " (eg Column A or Column B)", _ Title:="Select Range", Type:=8) On Error […]