C# Excel单元格类型为';数字';但它仍然显示为';概述';
我正在使用C#中的OpenXML电子表格包将C# Excel单元格类型为';数字';但它仍然显示为';概述';,c#,excel,openxml-sdk,C#,Excel,Openxml Sdk,我正在使用C#中的OpenXML电子表格包将数据表转换为excel。在代码中,我编写此代码是为了用数字类型附加单元格: public void MakeNumericCell(string cellReference, string cellStringValue, Row excelRow) { // Add a new Excel Cell to our Row Cell cell = new Cell() { CellReference = cellReferen
数据表
转换为excel。在代码中,我编写此代码是为了用数字类型附加单元格:
public void MakeNumericCell(string cellReference, string cellStringValue, Row excelRow)
{
// Add a new Excel Cell to our Row
Cell cell = new Cell() { CellReference = cellReference, DataType=CellValues.Number };
CellValue cellValue = new CellValue(cellStringValue);
cell.Append(cellValue);
excelRow.Append(cell);
}
请注意,我不是在问或谁的答案已经存在
在我的例子中,单元格在excel工作表中转换为数字格式。我可以使用公式=type(cell)
查找Excel单元格的类型,如果单元格类型为数字,则返回1。如图所示,最后一列(列名称为单元格类型
)使用=Type(Cell)
公式计算,该公式为C
列返回1,但它仍然显示在General
中,如图中突出显示
我做错什么了吗?还是Excel本身存在问题
您误解了函数的作用。它返回值的类型,而不是单元格的格式
如果不使用格式,而将单元格内容更改为“test”,则类型将更改为2。如果将其更改为“true”,则类型将返回为4。它与单元格的格式无关,单元格的格式与内容无关。您误解了函数的作用。它返回值的类型,而不是单元格的格式
如果不使用格式,而将单元格内容更改为“test”,则类型将更改为2。如果将其更改为“true”,则类型将返回为4。它与单元格的格式无关,单元格的格式与内容无关。Oh..这意味着单元格格式和单元格类型完全不同?你能分享一下如何将“格式”从“常规”修改为“数字”吗?你已经找到了“格式”下拉列表(上面写着“常规”)。单击它并选择其他选项。很抱歉,我不清楚。我想用C#编程更改它。不是直接从Excel。请尝试阅读和尝试来自和的建议。第二个更改为百分比,但您可以将其修改为数字格式。您可以很容易地找到如何开始录制宏,然后更改下拉列表:)或检查。哦..这意味着单元格格式和单元格类型完全不同?你能分享一下如何将“格式”从“常规”修改为“数字”吗?你已经找到了“格式”下拉列表(上面写着“常规”)。单击它并选择其他选项。很抱歉,我不清楚。我想用C#编程更改它。不是直接从Excel。请尝试阅读和尝试来自和的建议。第二个选项更改为百分比,但您可以将其修改为数字格式。您可以很容易地找到如何开始录制宏,然后更改下拉列表:)或检查。除此之外,您还可以使用
=单元格(“格式”,A2)
等来检查单元格的格式。用于参考和检查。除答案外,您可能需要使用=单元格(“格式”,A2)
等来检查单元格的格式。供参考和检查。