导出到Excel – 将DateTime列设置为Date

我的应用程序中有导出到Excelfunction。 程序本身没有问题,但是在导出数据时,它显示DateTime值为dd/MM/yyyy 00:00:00 ,在导入之前在DataGridView上显示它们时,在某些地方显示空单元格。

我需要调整我的导出代码以删除数据的时间部分,并只显示date。 当我在Excel中突出显示单元格时,我将它格式化为dd/MM/yyyy格式的“date”。

我该如何编程?

我的代码

 Dim xlapp As Excel.Application Dim xlWorkbook As Excel.Workbook Dim xlWorksheet As Excel.Worksheet Dim misvalue As Object = Reflection.Missing.Value xlapp = New Excel.Application xlWorkbook = xlapp.Workbooks.Add(misvalue) xlWorksheet = xlWorkbook.Sheets.Add xlWorksheet.Name = "SupplierInformation" xlWorksheet.Cells.NumberFormat = "@" For k As Integer = 1 To dgvExport.Columns.Count xlWorksheet.Cells(1, k) = dgvExport.Columns(k - 1).HeaderText Next For i = 0 To dgvExport.RowCount - 1 For j = 0 To dgvExport.ColumnCount - 1 xlWorksheet.Cells(i + 2, j + 1) = dgvExport(j, i).Value.ToString Next Next xlWorksheet.Columns.AutoFit() 

  • 声明一个将用于引用范围的variables,例如;

Dim eRange as Excel.Range

  • 然后,在Worksheet设置范围

eRange = xlWorksheet.Range("A1", B5")

  • 然后使用.NumberFormat设置格式

eRange.NumberFormat = "dd/MM/yyyy"

仅供参考: 这个链接包含几乎所有关于如何使用VB格式化Excel数据和单元格所需的信息