想把excel的数据导入到mysql里,时间数据被登记成了文本格式X小时X分X秒,导入会转换错误。结果找遍了全网就只有告诉,不能这么保存数据,要保存成数字时间格式的,就没人告诉我,如果已经保存成了这种数据,要怎么解决。只好自己想办法了。
先做了这么一个工具excel文档。在A列载入文本格式的时间数据,B,C,D列手写要补全的文本
E列的公式如下,把文本转成标准的XX小时X分X秒的格式
=IF(IFERROR(SEARCH("秒",A2),0)<>0,IF(IFERROR(SEARCH("小时",IF(IFERROR(SEARCH("分",A2),0)<>0,A2,CONCATENATE(C2,A2))),0)<>0,IF(IFERROR(SEARCH("分",A2),0)<>0,A2,CONCATENATE(C2,A2)),CONCATENATE(B2,IF(IFERROR(SEARCH("分",A2),0)<>0,A2,CONCATENATE(C2,A2)))),CONCATENATE(IF(IFERROR(SEARCH("小时",IF(IFERROR(SEARCH("分",A2),0)<>0,A2,CONCATENATE(C2,A2))),0)<>0,IF(IFERROR(SEARCH("分",A2),0)<>0,A2,CONCATENATE(C2,A2)),CONCATENATE(B2,IF(IFERROR(SEARCH("分",A2),0)<>0,A2,CONCATENATE(C2,A2)))),D2))
F列的公式如下,把E列的文本转城00:00:00:的格式
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(E2,"小时",":"),"分",":"),"秒"," ")
G列要把格式选成时间,公式如下:就是F列乘以数字1
=F2*1
之后把G列的结果复制会原表格即可。