我想验证excel工作表的范围(例如“A10:B20”)以检查它是否有错误或NA值?如何在 C# 中做到这一点?
PS 我找到了类似的主题(Excel 范围使用问题(单元格错误检查)),但那个主题不是我需要的。
我想验证excel工作表的范围(例如“A10:B20”)以检查它是否有错误或NA值?如何在 C# 中做到这一点?
PS 我找到了类似的主题(Excel 范围使用问题(单元格错误检查)),但那个主题不是我需要的。
关键是检查单元格中保存的值的数据类型。如果数据类型是整数 (Int32),则保存的值是 CVErr 值。要检查#N/A,单元格将是一个整数数据类型(不是双精度数!),其值为 -2146826246。
有关更多详细信息,请参阅堆栈溢出问题如何知道单元格是否在 C# 中的公式中有错误。
这可能会对您有所帮助。首先从 excel 中读取数据。请参阅此堆栈溢出问题。将 Excel 范围转换为 ADO.NET 数据集或数据表等。然后迭代数据表中的每一行,如
foreach (DataRow row in sheetTable.Rows)
{
foreach (DataColumn column in sheetTable.Columns)
{
// Check what ever you want to check
if (row[column].ToString().Equals("Error") || row[column] ==null)
{
// do something
}
}
}