当我通过 VSTO 双击 excel 中的一个单元格时,我收到此异常
我的代码如下:
Worksheet worksheet = (Worksheet)Globals.ThisAddIn.Application.ActiveSheet;
Range range = worksheet.Range[entry.Key, System.Type.Missing];
range.NumberFormat = "DD-MMM-YYYY";
当我使用 Tab 键或任何箭头键时,它完美运行
任何意见将不胜感激。
这可能是因为当您双击单元格时,该单元格处于编辑状态,您无法在处于编辑状态时对单元格/区域进行更改。
使用图纸选择事件(每当图纸上的选择发生更改时都会触发)是否无法实现所需的目标?
请注意,已单击具有焦点的单元格不会触发此事件。
https://msdn.microsoft.com/en-us/library/office/ff194470.aspx
当我通过VSTO双击excel中的一个单元格时,我收到此异常
代码中出现异常,因为 Excel 处于编辑模式。使用以下代码以编程方式确定状态:
Private Function IsEditing () As Boolean
Dim cBars As Office.CommandBars = ExcelApp.CommandBars
Dim result As Boolean = Not cBars.GetEnabledMso("FileNewDefault")
Marshal.ReleaseComObject(cBars)
Return result
End Function
有关详细信息,请参阅如何以编程方式检查用户是否正在编辑 Excel 单元格。