有些Excel单元格未被填充,C#

有些Excel单元格未被填充,C#,c#,excel,C#,Excel,我正在编写一个应用程序,它打开一个现有的.xlsx文件并写入某些单元格 有些单元格写得正确,而有些单元格保持空白 有什么想法吗 这是一段代码 对于正在工作和不工作的单元格,代码相同,只是索引已更改 oSheet.Cells[3, 15] = "1"; // this doesnt write to the cell oSheet.Cells[7, 7] = "1"; // this writes to the cell 我所能想到的只是Excel文件中存在格式问题?我在Excel中工作了多

我正在编写一个应用程序,它打开一个现有的
.xlsx
文件并写入某些单元格

有些单元格写得正确,而有些单元格保持空白

有什么想法吗

这是一段代码

对于正在工作和不工作的单元格,代码相同,只是索引已更改

oSheet.Cells[3, 15] = "1"; // this doesnt write to the cell 
oSheet.Cells[7, 7] = "1"; // this writes to the cell 

我所能想到的只是Excel文件中存在格式问题?

我在Excel中工作了多年,一直发现这样的怪癖。如果您在.NET 4.0中,请尝试以下操作:

using Excel = Microsoft.Office.Interop.Excel    

//Other Class code
var range = oSheet.Cells[3, 15];
range.Value2 = "1";
using Excel = Microsoft.Office.Interop.Excel    

//Other Class code

Excel.Range range = (Excel.Rang)oSheet.Cells[3, 15];
range.Value2 = "1";
否则,请尝试以下操作:

using Excel = Microsoft.Office.Interop.Excel    

//Other Class code
var range = oSheet.Cells[3, 15];
range.Value2 = "1";
using Excel = Microsoft.Office.Interop.Excel    

//Other Class code

Excel.Range range = (Excel.Rang)oSheet.Cells[3, 15];
range.Value2 = "1";
Value2似乎工作更稳定,因此我通常建议使用它


干杯

Anthony是对的,我的列和行被切换了。

你能发布不起作用的代码吗?快速建议:编辑你的问题以包含代码,而不是使用注释。检查单元格是否被锁定,列/行是否被隐藏。还要检查您是否正在查看单元格[3,15],而不是[15,3]。也有可能。检查[3,15]是否不属于合并范围。只有在指定合并范围的左上角单元格时,合并范围才会获得该值。如果指定任何其他单元格,它将不会将值写入该单元格,也不会弹出错误。