我有以下代码行:
Globals.ThisAddin.Application.CommandBars.GetEnabledMso("FileNewDefault")
其中Globals.ThisAddin.Application
是Excel.Application
对象。此代码返回在启用参数时是否传递功能区控件,并用于检查Excel是否处于编辑模式。它在大多数情况下工作正常,但在极少数用户的计算机上抛出以下异常:
ArgumentException: Value does not fall within the expected range.
我无法访问这些计算机进一步调查,我无法自行重现此问题。我的直觉是,这可能是因为不同语言的Excel版本使用不同的idMso
值,或者FileNewDefault idMso
在特定的Excel版本中不可用(例如Excel 2007,2010)。但是,基于我的有限测试,似乎都不是这种情况。
之前有没有人遇到过这个问题,或者有没有人对这可能引发此例外的事情有什么想法?