delphi Asked:2020-02-20 12:37:45 +0000 UTC2020-02-20 12:37:45 +0000 UTC 2020-02-20 12:37:45 +0000 UTC 导出到只有日期时间的 excel 772 我在 dbgrd 中有一个日期时间格式的“日期和时间”列,我需要它在导出到 Excel 时仅显示“日期和时间”列 delphi 3 个回答 Voted Viktor Tomilov 2020-02-20T14:48:21Z2020-02-20T14:48:21Z 导出到 Excel 是手动完成还是使用某些组件/例程? 如果是第一个,那么没有问题:评论中已经提出了解决方案。可能是这样: DateToStr(StrToDateTime(yourdatevar)); 如果是后者,那么选项是可能的: dbgrid 的不可见副本,其中列格式已更改(如果导出整个 dbgrid),dbgrid 的不可见副本,其中只有一列(如果导出是按列)。这种无形的复制和导出。 第二个选项也适合“懒惰”的人:当你不想重写或理解代码时。虽然这种方法是有缺陷的。 croll 2020-02-20T12:59:46Z2020-02-20T12:59:46Z 查找日期存储在哪一列并应用到它: FormatDateTime('dd.mm.yy', StrToDateTime(mydate)); Best Answer delphi 2020-03-03T11:22:33Z2020-03-03T11:22:33Z if(dbgrd1.Columns[col].Visible=True) then begin if dbgrd1.Columns[col].FieldName='DEALDATE' then sline := sline + FormatDateTime('dd/MM/yyyy', qry1.FieldByName(dbgrd1.Fields[col].FieldName).AsDateTime) + #9 else sline := sline + qry1.FieldByName(dbgrd1.Fields[col].FieldName).AsString + #9; end;
导出到 Excel 是手动完成还是使用某些组件/例程?
如果是第一个,那么没有问题:评论中已经提出了解决方案。可能是这样:
如果是后者,那么选项是可能的: dbgrid 的不可见副本,其中列格式已更改(如果导出整个 dbgrid),dbgrid 的不可见副本,其中只有一列(如果导出是按列)。这种无形的复制和导出。
第二个选项也适合“懒惰”的人:当你不想重写或理解代码时。虽然这种方法是有缺陷的。
查找日期存储在哪一列并应用到它: