如何用C#制作Excel AddIn
2010-09-30 22:38:07 来源:WEB开发网考虑用VSTO。VS 2005/2008默认都会安装这个组件,它相当于托管版本的VBA。而且VSTO支持C#语言,可以用最熟悉的技术解决这个问题。在C#里面,读取一个文件相当容易,一个StreamReader就可以搞定读取文件的问题。
打开VS2008,新建一个Excel 2003的Workbook项目。
查看原图(大图)
向导会创建一个类,它的主体代码如下
public partial class ThisAddIn
{
private void ThisAddIn_Startup(object sender, System.EventArgs e){ }
private void ThisAddIn_Shutdown(object sender, System.EventArgs e) { }
}
看不懂可以猜测,根据名字,猜测Startup和Shutdown是插件被加载和关闭时执行的事件
在ThisAddIn_Startup中,加载界面。
可以添加一个菜单,也可以添加一个工具按钮。添加菜单的效果如下
查看原图(大图)
具体代码的写法是
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
#region VSTO generated code
this.Application = (Excel.Application)Microsoft.Office.Tools.Excel.ExcelLocale1033Proxy.Wrap(typeof(Excel.Application), this.Application);
#endregion
this.AddMenu();
}
Office.CommandBarControl menuTop;
Office.CommandBarControl menuCreateMail = null;
private void AddMenu()
{
Office.CommandBar bar = this.Application.CommandBars.ActiveMenuBar;
menuTop.Caption = "YiHu Tools";
Office.CommandBarPopup commandBarPopupTmp = menuTop.Control as Office.CommandBarPopup;
menuCreateMail.Caption = "Import Data";
Office.CommandBarButton buttonMenu = menuCreateMail as Office.CommandBarButton;
buttonMenu.Click += new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(buttonMenu_Click);
}
更多精彩
赞助商链接