您的位置:首页 > 其它

VSTO 学习笔记(十二)自定义公式与Ribbon

2011-08-30 20:43 239 查看
这几天工作中在开发一个Excel插件,包含自定义公式,根据条件从数据库中查询结果。这次我们来做一个简单的测试,达到类似的目的。

即在Excel 2010中添加一个Ribbon,包含4个自定义公式:仅仅是示例公式加减乘除。

最终效果:

View Code using Microsoft.Office.Tools.Ribbon;

namespace ExcelAddIn
{
public partial class RibbonDemo
{
private void RibbonDemo_Load(object sender, RibbonUIEventArgs e)
{

}

private void btnAdd_Click(object sender, RibbonControlEventArgs e)
{
Globals.ThisAddIn.Application.ActiveCell.Formula = "=Add()";
}

private void btnSubtract_Click(object sender, RibbonControlEventArgs e)
{
Globals.ThisAddIn.Application.ActiveCell.Formula = "=Subtract()";
}

private void btnMultiply_Click(object sender, RibbonControlEventArgs e)
{
Globals.ThisAddIn.Application.ActiveCell.Formula = "=Multiply()";
}

private void btnDivide_Click(object sender, RibbonControlEventArgs e)
{
Globals.ThisAddIn.Application.ActiveCell.Formula = "=Divide()";
}
}

11、修改Ribbon项目属性,将 Excel设置为启动的扩展程序:



12、编译、运行,会调用Excel来打开,自动加载我们的插件ExcelAddIn:



13、激活自定义公式:

在【Developer】选项卡中点击【Add-Ins】,再点击【Automation】找到我们编写的自定义公式,【OK】。



14、此时在Excel中就可以使用我们的公式了,EnjoyJ



小结:

本次把自定义Ribbon与自定义公式结合起来使用,具体细节可以参考源代码,在我之前的VSTO 系列文章中也有介绍。

需要注意的是这种方法只适用于Excel 2007、2010,2003不支持,关于Excel 2003的自定义菜单及自定义公式解决方案后面再介绍。

此外,只有Excel 2010 x64需要用批处理脚本来注册自定义公式,Excel 2010 x86不需要,会自动注册。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: