将导出的值(时间)从datagridview转换为excel

我有一个datagridview有大量的员工从表中检索的时间和超时logging。 现在我可以将数据从datagridview导出到Excel文件,但即时通讯有问题。

列时间和超时的时间格式是非常好的,像“9:00 AM”,但是导出到excel时变成“12/30/1899 9:00:00 AM”。 这也是我在datagridview中的第一个问题,但我使用DGV.Columns(1).DefaultCellStyle.Format =“t”来解决这个问题。 有人教我

没有问题。 date1899-12-30是零值date,如果没有给定date,则时间值将始终属于零date。

所以,您只需要在显示值时应用时间格式

附录

看来,如果您只在Excel中直接input时间,它将使用1900-01-01的零值date。

所以,出口时加两天,如:

Dim t As TimeSpan Dim d As DateTime t = New TimeSpan(14, 34, 0) ' Your cell value. d = New DateTime(1900, 1, 1).AddTicks(t.Ticks) 

然后导出d。

已经解决了! 我使用这个代码

 cellvalue = DGVResult.Rows(i).Cells(j).Value.ToString Date.Parse(cellvalue).ToString("hh:mm tt").ToString 

我使用循环捕获要格式化的单元格

谢谢你的提示!