Excel加载项丝带菜单
我们已经开发出包含了一些基本功能的Excel加载项(.xlam)文件Excel加载项丝带菜单
如MySum(A,B),并返回我想等总和
然后,我保存在网络上的文件,并安装了它在其他国家人民的Excel中使用
文件 - >选项 - >加载项
使excel指网络插件作品如魅力。每个人都可以在本地的Excel应用程序中使用MySum()函数。
现在我想把它提升到一个新的水平,即我想在功能区菜单中加入相同的功能,例如我们创建一个.exe文件用户安装它,一个菜单将出现在名为MySum的用户excel功能区上,这将增加添加更多功能的灵活性,并使最终用户更容易。
我听到并使用了一些第三方软件功能区菜单(使用xll文件),并且我知道它也可以通过Visual Studio完成。我只是想获得专家意见,以了解我的方案的最佳方法。
任何帮助表示赞赏!
使用自定义用户界面编辑器自己制作自定义功能区非常容易。注意 - 这在Mac上无法使用,因为我们的微软朋友似乎认为能够在两个平台上以相同的方式控制加载项的外观并不重要。有时候给我买一杯啤酒,我会告诉你我真的在想什么......
无论如何,你不需要Visual Studio路线。只要到
http://www.rondebruin.nl/win/s2/win001.htm
朗日布鲁因给出了一个极好的步行通过关于如何做到这一点。只需按照步骤 - 它的工作。编辑源代码(在转换为插件之前),添加一些描述所需功能区组件的XML。您可以隐藏现有组件,将新组添加到现有功能区,创建您自己的选项卡......制作好看的图标甚至非常容易,因此您的按钮看起来很酷/个性化/专业(我使用Axialis图标工作室来设计一些图标,挺自豪的......)
如果你卡住了,问问!
更新这里是主页选项卡后立即产生一个新的标签的XML的例子,并把两组按钮:
<mso:customUI xmlns:mso="http://schemas.microsoft.com/office/2009/07/customui">
<mso:ribbon>
<mso:qat />
<mso:tabs>
<mso:tab id="myTab" label="Awesome functions" insertAfterMso="TabHome">
<mso:group id="myGroup1" label="Awesome math" autoScale="true">
<mso:button id="id_sum" label="sum" image="sigma" size="large" onAction="UI_doMath" />
<mso:button id="id_mult" label="multiply" image="times" size="large" onAction="UI_doMath" />
<mso:button id="id_var" label="variance" image="variance" size="large" onAction="UI_doMath" />
</mso:group>
<mso:group id="myGroup2" label="Awesome text" autoScale="true">
<mso:button id="id_bold" label="really bold" image="bold" size="large" onAction="UI_doText" />
<mso:button id="id_italic" label="italicize" image="italic" size="large" onAction="UI_doText" />
</mso:group>
</mso:tab>
</mso:tabs>
</mso:ribbon>
</mso:customUI>
正如你所看到的,每个组调用其自身的功能 - 一个组呼叫UI_doMath
,其他呼叫UI_doText
。潜艇的签名看起来有点像这样:
Sub UI_doMath(controlID As String)
Select Case controlID
Case "id_sum"
call sumTheStuff
Case "id_mult"
call multiplyStuff
Case "id_var"
call computeVariance
Case Else
MsgBox "Unknown button: '" & controlID & "' was clicked!"
Exit Sub
End Select
End Sub
通过这种方式,一个例程就是功能区中一个组中所有按钮的入口点。我认为,使代码更容易维护。对我来说尤其如此,因为我实际上有一个“平台无关”的版本 - 也就是说,无论你从菜单(在Mac上)还是在功能区(在PC上)选择了一个项目,都会以相同的功能结束。但这是我希望你不需要的改进。
我已经实现了菜单栏上的基本按钮和单击它时的消息,效果很好。现在,我应该从哪里开始,即如何在网络上部署这个带有“令人敬畏的功能”的Excel? – EvenPrime
将它保存为加载项,然后像对待您之前加载项一样对待它。新的功能区将出现...(它嵌入在加载项中)。 – Floris
正是我所想象的,美丽! – EvenPrime