请教stringgrid的数据类型问题

pengchao025 2012-03-26 10:46:33
我EXCEL里有时间数据,如6:53:06,一输入到stringgrid中,就变成了.286875,
18:45:00,输进去,就成了.78125,貌似是当前时间除以24得到的,但是前面又少个0。但是日期读进去,还是正常的。

我能不能不让它显示为小数,而直接以时间正常显示出来。

我从Excel里读出的数据类型,怎么都为vardispatch?
...全文
93 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengchao025 2012-03-26
  • 打赏
  • 举报
回复
if ExcelWorksheet1.Cells.Item[1,2].NumberFormatLocal='?' then ...
?处时间类型填什么?只知道文本是\@
pengchao025 2012-03-26
  • 打赏
  • 举报
回复
怎么读列字段的类型?
pengchao025 2012-03-26
  • 打赏
  • 举报
回复
我EXCEL里有日期,时间,数字,读过来全部为VARdispatch类型,不好判断做转换
jonathanscor 2012-03-26
  • 打赏
  • 举报
回复
看下读过来的列字段为什么类型的,如果是date类型的,转换下,FormatDateTime('yyyy-mm-dd hh:ss:mm',Date);
pengchao025 2012-03-26
  • 打赏
  • 举报
回复
现在主要是EXCEL里读出来的数据都为VARdispatch类型,不好判断,如果能判断出是时间类型,我直接用timetostr()就可以了。就是不好判断。
pengchao025 2012-03-26
  • 打赏
  • 举报
回复
formatdatetime('hh:nn:ss',ExcelWorksheet1.Cells.Item[1,2]);
Label2.Caption:= ExcelWorksheet1.Cells.Item[1,2];

还是显示为小数。
haitao 2012-03-26
  • 打赏
  • 举报
回复
时间是浮点,需要formatdatetime(...)转为字符串
pengchao025 2012-03-26
  • 打赏
  • 举报
回复
转换成文本不行啊,时间还是小数,如.286875,而且把日期都变成整数了
Corn1 2012-03-26
  • 打赏
  • 举报
回复
excel里面,列的格式选择文本

828

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧