c#访问EXCEL,将单元格格式设置为一般格式
本文关键字:格式 设置 单元格 访问 EXCEL | 更新日期: 2023-09-27 18:10:51
当在c#中操作excel单元格时(通过COM对象),我应该使用。value还是。value2 ?这是
sheet.Cells[row + n, col].Value = "Hello world"
或
sheet.Cells[row + n, col].Value2 = "Hello world"
它们之间的区别是什么?
还有,如何将单元格格式设置为"通用";
?sheet.Cells[row + n, col].NumberFormat = "XYZ"; // Not sure what should be here
现在当我给一个单元格赋值为"0,34"时即使我做了
sheet.Cells[row + n, col].NumberFormat = "@";
我得到了这个"小错误"在每个单元格的左上角签名
要回答第一个问题,您应该阅读这篇文章:http://blogs.msdn.com/b/eric_carter/archive/2004/09/06/225989.aspx
可选参数部分不再适用,因为c# 4.0有可选参数。
但有一个区别(在文章中指出)
该属性[Value2]与Value之间的唯一区别属性是Value2属性不使用货币和日期数据类型。可以返回用这些数据类型格式化的值为
对于第二个问题,您是否尝试将单元格设置为"General"并在代码中读出它?
我认为是sheet.Cells[row + n, col].NumberFormat = "General"
,其中"@"
是纯文本。
为了得到一般类型,作为"魔术字符串",应该分配给NumberFormat
属性尝试使用空字符串,例如
sheet.Cells[5, 7].NumberFormat = ""; // sets the cell type to the General type