Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
excel中的更改日期_Excel_Date_Format - Fatal编程技术网

excel中的更改日期

excel中的更改日期,excel,date,format,Excel,Date,Format,我正在尝试将excel中单元格的日期格式更改为其他日期格式。目前的格式为:2017年4月10日01:58:24下午。我想有一个正常的格式,如dd-mm-yyyy没有时间,但我不能让它与excel格式的工作 提前感谢,, 凯斯特您可以使用: =(MID(A2,FIND(",",A2)+2,FIND(",",SUBSTITUTE(A2,",","@",1))-FIND(",",A2)-2)&"-"&LEFT(A2,FIND(",",A2)-1)&"-"&MID(A2,

我正在尝试将excel中单元格的日期格式更改为其他日期格式。目前的格式为:2017年4月10日01:58:24下午。我想有一个正常的格式,如dd-mm-yyyy没有时间,但我不能让它与excel格式的工作

提前感谢,, 凯斯特

您可以使用:

=(MID(A2,FIND(",",A2)+2,FIND(",",SUBSTITUTE(A2,",","@",1))-FIND(",",A2)-2)&"-"&LEFT(A2,FIND(",",A2)-1)&"-"&MID(A2,FIND(",",SUBSTITUTE(A2,",","@",1))+2,LEN(A2)))*1
这基本上是一点字符串操作(以及将
替换为
@
以帮助)将其转换为excel理解的通用格式“d-m-y h:m:ST”,然后将字符串乘以1强制转换为一个数字(在本例中为42835.58222);您只需将其格式化为日期(重要!):


编辑:根据注释,第一个逗号实际上不存在,因此修改后的公式:

=(MID(A2,FIND(" ",A2)+1,FIND(",",A2)-FIND(" ",A2)-1)&"-"&LEFT(A2,FIND(" ",A2)-1)&"-"&MID(A2,FIND(",",A2)+2,LEN(A2)))*1

数据在A1中,在B1中输入:

=DATE(MID(A1,10,4),MATCH(LEFT(A1,3),{"jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"},0),MID(A1,6,2))
并应用所需的格式:


(这将产生一个真正的Excel日期,可用于排序、计算等)
(假设日期字段始终为两位数)
(如果您的月列表使用的语言不是英语,请编辑月列表)

如果Excel将值识别为日期,只需选择要格式化的单元格,单击格式下拉列表并选择
short date
。你试过了吗?是的,我试过了,但我认为excel无法识别当前格式。日期数小于10的日期看起来如何?i、 e.
2017年4月1日01:58:24 PM
2017年4月1日01:58:24 PM
十天以下的天数前面是零,因此2017年4月1日01:58:24 PMHi Jerry,感谢您的评论。我不知道为什么,但我得到一个错误,当我试图使用代码。我也犯了一个错误,月份和日期没有用逗号分隔,所以:2017年4月6日03:42:14 PM。我不确定这是否会有很大变化,但当我尝试添加逗号的代码时,效果并不好。@Kessie是的,它改变了一些事情。给我一些secs@Kessie好的,在回答中添加了调整后的答案非常感谢,它起作用了!我也发现了为什么一开始它会出现错误,我的excel使用;我不是很抱歉问你这么多,但我还有最后一个问题。你的代码运行得很好,除了3月份或3月份,它给出了一个#值!。地铁2017年03月23日下午3:12:26这是它在牢房里的方式。mrt是荷兰语三月的缩写,然而其他几个月也是荷兰语的,它们仍然适用于您的代码。你知道这是什么原因吗?