我想驗證excel工作表的範圍(例如「A10:B20」)以檢查它是否有錯誤或NA值?如何在C#中做到這一點?如何驗證Excel使用.NET有錯誤/警告的範圍?
P.S.我找到類似的主題(Excel range usage question (cell error checking)),但該主題不是我需要的東西。
我想驗證excel工作表的範圍(例如「A10:B20」)以檢查它是否有錯誤或NA值?如何在C#中做到這一點?如何驗證Excel使用.NET有錯誤/警告的範圍?
P.S.我找到類似的主題(Excel range usage question (cell error checking)),但該主題不是我需要的東西。
關鍵是要檢查在單元中保持的值的數據類型。如果數據類型是Integer(Int32),則所保存的值是CVErr值。要檢查#N/A,單元格將是一個Integer數據類型(不是Double!),其值爲-2146826246。
有關詳細信息,請參閱堆棧溢出問題How to know if a cell has an error in the formula in C#。
這可能對您有幫助。首先從excel中讀取數據。請參閱此堆棧溢出問題。 Convert Excel Range to ADO.NET DataSet or DataTable, etc。然後重複從數據表中的每一行像
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
}
}
}
我需要驗證數據而無需將其導入DataTable,您有任何其他想法嗎? – Anonymous 2010-03-17 07:27:38