Tag: ribbonx

从VSTO的应用程序中的其他位置修改Officefunction区控件状态

我有一个用XML创build的VSTO Addinfunction区,而不是devise者。 它有一个button,我只想在用户处于插件控制范围时启用。 我有callback设置工作正常,当function区加载。 Ribbon1.cs代码 public bool refreshButtonState; public void Ribbon_Load(Office.IRibbonUI ribbonUI) { this.ribbon = ribbonUI; refreshButtonState = false; ribbon.InvalidateControl("btnRefreshQuery"); } public bool refreshEnabled(Office.IRibbonControl control) { return refreshButtonState; } 我捕获了一个工作表更改事件来监视用户在下面的范围。 ThisAddIn.cs代码 void ThisWorkbook_SheetChange(object ws, Excel.Range rng) { //Disable Button state here. if (rng.ListObject != null) { if (rng.ListObject.Name.StartsWith(LO_PREFIX)) { //Enable Button state here. } } […]

在function区中使用.ico图像

我有ac#加载项,其中有一个自定义function区,但是,我没有button的图像。 我没有一个.bmp文件,只有一个。 如果可能的话,最好不要转换任何东西。 function区是通过xml创build的,而不是Visual Studio的Ribbondevise器

dynamic禁用自定义(VBA)Excel上下文菜单button?

情景 嗨,大家好,我正要使用此MSDN页面上的说明在我的Excel工作簿中添加一些自定义控件到单元格上下文菜单( 不是function区 )。 我遇到的唯一问题是我需要项目才能启用特定列/单元格的范围。 我环顾四周,我一直无法find任何步骤 – 有一些VSTO开发(用C#编写),但这不是我所需要的。 我打算使用内置于Office中的VBA IDE编写此代码,也可能使用自定义用户界面编辑器添加一些XML。 问题 所以基本上,我正在寻找一种方法来运行一个函数,在上下文菜单被调用(即,右键单击),validationselect,以确保它在适当的列。 如果不是,我想我的自定义button变灰。 注意:这可能无法完成一个validationfunction,我真的没有线索。 如果有更好的方法,请随时分享(我愿意提供build议)。 PS 请不要以为我要求你写我的代码。 创build这些button应该是非常简单的,因为我之前创build了很多(尽pipe它们都是Ribbon项目),我希望在这个特定的问题上寻求一些快速的帮助是可以的。 先谢谢你!

VBA当用户点击发送作为附件

我的公司在使用Outlook触发打开Outlook时遇到问题,导致Outlook在加载时无限期挂起(无法轻松修复的问题)。 我们有几个自定义function区的工作簿,我们现在检查Outlook是否打开,然后允许用户通过电子邮件发送。 问题在于,这不包括仍在使用文件>保存并发送>作为附件发送的用户。 我想知道是否有人知道一个过程,我可以添加一个例程到现有的button,我们可以保存为一个Excel添加在每个人的Excel,如果Outlook是开放的首先检查? 我有Outlook的检查,所以我只是需要帮助find一种方法来运行它。 任何帮助表示赞赏。

自定义ribbonx XML onAction使其不能加载

我有一个xlam文件,我想添加一个自定义ribbonXbutton。 我使用自定义用户界面编辑器和这个XML“工程”。 <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"> <ribbon> <tabs> <tab id="Tab1" label="LeaveReport"> <group id="Group1" label="Formatering"> <button id="Button1" imageMso="ChartSwitchRowColumn" size="large"/ > </group> </tab> </tabs> </ribbon> </customUI> 但是,如果我添加onaction使button做一些事情,根本不加载。 这意味着标签和button根本就不存在。 <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"> <ribbon> <tabs> <tab id="Tab1" label="LeaveReport"> <group id="Group1" label="Formatering"> <button id="Button1" imageMso="ChartSwitchRowColumn" size="large"/ onAction="formatera_for_pivot_tabell()"/ > </group> </tab> </tabs> </ribbon> </customUI> 我也试过没有() 。 我在这里做错了什么? 没有动作的button是相当无用的: – /

Excel-2010 – CustomUI – Backstage:在同一实例中打开各种文件时出错

首先,我很高兴join社区。 我希望我们经常交stream意见。 我是法国人,所以请原谅我的错误。 我试图解释我的问题: 我有“好”的想法,使用我的Excel文件的后台创build一个小仪表盘。 它工作得很好。 当这个文件与另一个文件同时在Excel的同一个实例中被打开时,问题就出现了 。 第二个文件试图访问我的工作簿的“Backstage_OnShow”和“Backstage_OnHide”函数,所以我有一个消息“不可能运行macros”Backstage_OnShow“(或”Backstage_OnHide“)。macros可能不可用工作簿…“< – 这是法语错误消息的翻译。 我怎么能不做这个消息,或者确保后台是特定于我的文件而不是Excel的实例? 我用我的代码片段显示。 这将更清楚。 在我的XML中,我有这样的: <customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad ="Ribbon_Load"> <ribbon startFromScratch="false"/> <backstage onShow="Backstage_onShow" onHide="Backstage_onHide"> … </backstage> </customUI> 在我的Excel文件中,我有这样的: Public Sub Ribbon_Load(ribbon As IRibbonUI) Set Ruban = ribbon End Sub Public Sub Backstage_onShow(ByVal contextObject As Object) 'Rafraichissement du ruban Ruban.Invalidate End Sub Public Sub Backstage_onHide(ByVal contextObject […]

是否可以在Microsoft文档中存储自定义数据?

鉴于微软最新的“OpenXML”文档版本,即docx,xl​​sx等是否可以存储自己的自定义数据,因为他们看起来像一个压缩文件? 我一直在看最新的RibbonX for excel,可以看到你可以存储customUI.xml来configurationfunction区栏。 现在,我想知道是否有可能将其他数据存储在本身embedded在文件本身的xml文件中? 有趣的一点是,如果这可以通过VBA完成,而文件是开放的…. 任何人都知道这是可能的吗? 显然,文档本身存储自己的configuration,所以知道其他数据是否可以存储在那里会很有趣。

Excel自定义RibbonUI; 为菜单添加部分标题

我正在运行2016独立Excel(32位版本)。 我一直在build立一个自定义的function区,到目前为止这么好。 这个文档相当stream畅,写得很好。 但是,我不能find任何方式来包含菜单“节标题”,如下所示: 具体引用图片中的部分标题(即“单元格大小”,“可见性”等)。 我已经看到其他加载项模拟这个,除非他们是COM加载项。 这里是我参考的文档: https : //msdn.microsoft.com/en-us/library/dd911038(v=office.12).aspx 它过时了吗? 我尝试添加“标题菜单”到我的项目,但是,甚至不工作。 我也尝试添加<labelControl /> ,并且当labelControl在Menu中时,function区甚至不会加载。 此外,我的Excel版本甚至不会显示<dialogBoxLauncher>所以我担心有些事情与我的Excel版本不兼容。 我很容易地跟随文档,一切都工作得很好。 我甚至在我使用的function区中有一个编辑editBox ,不会遇到任何91错误。 所以我知道这不是我。 任何人都可以用提供的API复制这个吗? 我的function区是用XML构build的,所以我减less了尽可能多的错误,是我的问题? 是否应该为段落标题专门实施运行时代码? 我的设置短片 <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="OnRibbonLoad"> <ribbon> <tabs> <tab idMso="TabHome"> <group id="GroupTextTools" insertAfterMso="GroupFont" label="Text Tools"> <gallery id="textcase_gallery" label="Case Select" columns="1" size="large" imageMso="WordArtInsertDialogClassic" onAction="TextCase_SwitchCase" > <item id="textcase_CapsButton" imageMso="TextAllCaps" label="Uppercase" screentip="Changes selected cells to all uppercase" […]

隐藏MS Officefunction区中的加载项选项卡(特别是PowerPivot选项卡)

我正在修改Excel文件的function区,隐藏所有默认和上下文选项卡,但只显示我自己的选项卡。 但是,一旦安装了带有自己的选项卡的加载项,这些选项卡仍然显示,因为我不知道如何解决它们。 我知道你可以使用<ribbon startFromScratch="true">删除所有的选项卡,但我需要把它们留在原地(我实际上使用getVisiblecallback从用户隐藏它们,但显示给pipe理员)。 所以,下面的问题: 有什么办法来应用“默认”getVisiblecallback所有标签不知道(我想答案是否定的) 我怎样才能找出其他加载项选项卡的标签ID 鉴于PowerPivot越来越普遍(特别是在Excel 2013中),此选项卡的tabID是什么?

运行代码时不调用Excel VBAfunction区getEnabled

我有一个运行了很长时间(可能几天,它执行数据采集)的Excel VBAmacros。 它最初是为Excel 2003编写的,并具有自定义工具栏和菜单。 我最近更新它使用RibbonXML使用function区界面。 当macros运行时,我想禁用一些界面元素(如“启动testing”),并启用其他(如“停止testing”button)。 我遇到的问题是,只有在macros代码运行完成后才能处理对ribbon.invalidate的调用。 你可以用一个简单的testing程序很容易地看到这个效果 Sub test() ribbon.Invalidate DoEvents Sleep (5000) End Sub function区“getEnabled”callback中的debug.print将被视为仅在5秒睡眠结束时执行。 有什么办法强制一个ribbon.Invalidate被激活,然后呢? ::编辑1 :: 我已经创build了一个小的演示工作簿来解释这个问题: http : //www.bodgesoc.org/Button_Demo.xlsm ::编辑2 :: 一个不同的论坛的成员find了一个解决scheme,虽然这是一个稍微丑陋的。 我想这可以现在被标记为“回答”,但一个更优雅的解决scheme,将不胜感激。 Application.ScreenUpdating = False Application.ExecuteExcel4Macro "Show.ToolBar(""Ribbon"",False)" Application.ExecuteExcel4Macro "Show.ToolBar(""Ribbon"",True)" Application.ScreenUpdating = True