禁用粗体button

我想在Excel工作表中禁用“粗体”切换button。

我该怎么做?

我有下面的代码,但它不工作:

CommandBarControl test = excel1.Application.CommandBars["Formatting"].FindControl(Id:113,Recursive:true); if (test.Enabled) { MessageBox.Show(test.Caption + " enabled"); test.Visible = false; test.Enabled = false; } 

我认为这是行不通的,因为从Office 2007他们使用function区控件。

任何人都可以帮助如何获得特定button的控制? 所以我可以改变它的属性,默认启用/禁用它等等

恐怕答案确实是不可能的。

我一直在寻找类模块的可能性,因为我认为使用一个类,你可以拦截事件,将文本更改为粗体,然后取消该事件。 但是,我能find的所有东西都与其他事件(价值变化,计算,工作簿结构变化等)有关。

即使它能够工作,也会涉及到一些严重的编码问题,并且容易出错。

也许你是以错误的方式去做 – 你删除这个button的原因是什么? 可能有另一个解决你的问题。 如前所述,删除button不会阻止使用Ctrl + B或粘贴粗体文本的可能性 – 你根本无法防止这种情况。

不是你想要的答案,我敢肯定,但恐怕这是不能做到的。