导出到 Excel - 将 DateTime 列转换为 Date
Exporting to Excel - Make DateTime columns into Date
我的应用程序中有导出到 Excel 功能。
程序本身没有问题,但在导出数据时,它显示 DateTime
值为 dd/MM/yyyy 00:00:00
,而在导入前将它们显示在 DataGridView
上时,在某些地方显示空单元格.
我需要调整导出代码以删除数据的时间部分,只显示日期。当我突出显示 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()
- 声明一个将用于引用范围的变量,例如;
Dim eRange as Excel.Range
- 然后,在
Worksheet
中设置范围
eRange = xlWorksheet.Range("A1", B5")
- 然后设置格式,使用
.NumberFormat
eRange.NumberFormat = "dd/MM/yyyy"
仅供参考: This link 包含几乎所有您可能需要的关于如何使用 [=39= 格式化 Excel 数据和单元格的信息]
我的应用程序中有导出到 Excel 功能。
程序本身没有问题,但在导出数据时,它显示 DateTime
值为 dd/MM/yyyy 00:00:00
,而在导入前将它们显示在 DataGridView
上时,在某些地方显示空单元格.
我需要调整导出代码以删除数据的时间部分,只显示日期。当我突出显示 Excel 中的单元格时,我将其格式化为格式 dd/MM/yyyy
.
如何以编程方式执行此操作?
我的代码
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()
- 声明一个将用于引用范围的变量,例如;
Dim eRange as Excel.Range
- 然后,在
Worksheet
中设置范围
eRange = xlWorksheet.Range("A1", B5")
- 然后设置格式,使用
.NumberFormat
eRange.NumberFormat = "dd/MM/yyyy"
仅供参考: This link 包含几乎所有您可能需要的关于如何使用 [=39= 格式化 Excel 数据和单元格的信息]