Excel范围应用新的NumberFormat

我有一个Microsoft.Office.Interop.Excel.Range我填写数据并设置一个新的NumberFormat,如下所示:

wkbActive = (Excel.Workbook)Globals.ThisAddIn.Application.ActiveWorkbook; wksActive = (Excel.Worksheet)wkbActive.ActiveSheet; Excel.Range rngExample = wksActive.get_Range("A1"); rngExample.Value = "08.06.2015"; rngExample.NumberFormat = "ddd, d. M"; example.NumberFormat = "ddd, d. M"; 

问题是新的NumberFormat不适用,直到我点击进入单元格。 有一个“更新”的方法或范围?

这是因为您将单元格值设置为一个string并且不会将其计算为date,直到您单击该单元格并按下“Enter”。

Excel将date存储为表示自1900年以来的时间的double 。应该将Value2属性设置为每个示例的DateTime

 rngExample.Value2 = new DateTime(2015, 6, 8); rngExample.NumberFormat = "ddd, d. M";