我正在開發一些功能,它需要知道給定Excel電子表格的用戶列的數據類型。這些電子表格可以有多種格式,除了第一行是列名以外,沒有標準格式。我遇到的問題是能夠區分整數和DateTime列。目前,我使用下面的函數來確定一個單元是一個DateTime細胞或不:Excel確定單元格的數據類型是DateTime還是Int
private bool isOADate(double Val)
{
try
{
DateTime dt = DateTime.FromOADate(Val);
return true;
}
catch (ArgumentException)
{
return false;
}
}
但是,如果一個小區有1個,2個,3等在裏面,這個函數返回true,因爲它是能夠將它們分別轉換爲1899/12/31 12:00:00 AM,1900/01/01 12:00:00 AM,1900/01/02 12:00:00 AM。有沒有更好的方法來確定單元格的DateTime數據類型?或者你能否建議對我目前的功能進行改進以區分它們?
你可以測試單元格的格式!在一個單元格中,畢竟這是一個從日期/時間差異的數字。 –