如何将EXCEL文本形式50.12转化为日期形式1950年12月
本帖最后由 ziyaxian 于 2009-12-30 12:27 编辑想批量转一个EXCEL表中的日期,所有的日期都以XX.XX形式存在,如何批量转成日期形式呢?01.03转成2001年03月,等待解决!!! 50.12中的50是1950,01.03中的01为何是2001了?两者的界限在哪里? 本帖最后由 ziyaxian 于 2009-12-29 20:35 编辑
回复 2# pusofalse
一个是参加工作的时间,50.12代表1950年12月,那一个是退休的时间,01.03代表2001年3月,这个表有几百人,当时编表的人为了省事弄的,现在想算出工龄,我想转一下再算,不知道有别的方法没有 确实界定上有些问题,如果没有以后的日期,年份可以这样处理,对大于20的前面加19,小于20的前面加20. 转换完了以后再录入就没这问题了,能具体说一下怎么转吗? #include <Excel.au3>
$sFilePath1 = @ScriptDir & "\book1.xls"
$oExcel = _ExcelBookOpen($sFilePath1)
If @errorThen
MsgBox(0, "错误!", "无法创建对象或文件不存在!")
Exit
EndIf
$A=_ExcelReadSheetToArray($oExcel)
$hangmax=$A
For $i=1 To $hangmax
$YData=_ExcelReadCell($oExcel,$i,3)
If StringRegExp($YData,"\d\d.\d\d") Then
If Number(StringLeft($YData,2))>=20 Then
$Ndate="19"&$YData
Else
$Ndate="20"&$YData
EndIf
_ExcelWriteCell($oExcel,$Ndate,$i,3)
EndIf
Next
谢谢,明白了 前来挣钱,感谢楼主 :face (32):我见我们公司的小秘是用宏来解决的... 好办法,谢谢您在
页:
[1]