将excel列格式设置为“yyyy-MM-dd"”通过.net

本文关键字:quot net 通过 yyyy-MM-dd excel 格式 设置 | 更新日期: 2023-09-27 18:12:49

我试图格式化我在。net应用程序中创建的excel列。我把正确格式的日期发送给excel表格,但是,由于某种原因,excel似乎以自己的方式格式化了它。下面是我所拥有的,但它不起作用:

sheet.Cells[i, 2] = String.Format("{0:yyyy-MM-dd}", Convert.ToDateTime(dr["date"].ToString())); //yyyy-mm-dd
                    ((Excel.Range)sheet.Cells[i, 2]).EntireColumn.NumberFormat = "yyyy-MM-dd";

格式是mm/dd/yyyy。如何设置这一列的格式?提前谢谢你。

添加

不知道这是否重要但这就是我保存excel文件的方式:

 wb.SaveAs(FileName, Excel.XlFileFormat.xlCSV,
                          null, null, false, false, Excel.XlSaveAsAccessMode.xlNoChange,
                          false, false, null, null, null);

将excel列格式设置为“yyyy-MM-dd"”通过.net

试试这个:

((Excel.Range)sheet.Cells[i, 2]).EntireColumn.NumberFormat = "yyyy-MM-dd";
sheet.Cells[i, 2].Value2 = Convert.ToDateTime(dr["date"].ToString());

或者(使用字符串)

((Excel.Range)sheet.Cells[i, 2]).EntireColumn.NumberFormat = "@";
sheet.Cells[i, 2].Value2 = Convert.ToDateTime(dr["date"].ToString())
                           .ToString("yyyy/MM/dd");

不要在Excel中打开它,Excel将重新格式化它打开的任何CSV文件,并使用您的系统区域设置显示日期和时间。

请使用普通的文本编辑器(如记事本)查看CSV文件。

相关文章: