Формат ячейки Excel от ACE.OLEDB
У меня есть следующий код, который я обновляю ячейку в файле Excel, но не соответствует формату, который есть в моей ячейке:
string cad = @" Provider=Microsoft.ACE.OLEDB.12.0;" +
@"Data Source=" +
Server.MapPath("~/SVG/" + filenameexport + ".xlsx;") +
@"Extended Properties=" + '"' + "Excel 12.0 Xml;HDR=NO" + '"';
try
{
using (OleDbConnection con = new OleDbConnection(cad))
{
con.Open();
string query = @"UPDATE [Cost Planning$] SET F9= ? WHERE F1 = 'Category'";
using (OleDbCommand cmd = new OleDbCommand(query, con))
{
cmd.Parameters.AddWithValue("@param1", Convert.ToDateTime("2014/07/01"));
cmd.ExecuteNonQuery();
}
con.Close();
}
}
Как я могу заставить меня уважать формат ячейки?
Эта строка кода, куда я добавляю код?
((Excel.Range)worksheetobject.Range("A1")).EntireColumn.NumberFormat = "MM/DD/YYYY";
Потому что отправляемая ссылка - это когда сгенерирован файл Excel 0, а мой файл Excel создан.
1 ответ
Вы можете отформатировать столбец Excel, используя NumberFormat
свойство (как обсуждено в Как сделать правильный формат даты при записи данных в Excel). Например, чтобы установить его в формат даты, как показано ниже:
((Excel.Range)worksheetobject.Range("A1")).EntireColumn.NumberFormat = "MM/DD/YYYY";