Excel 删除长日期格式的时间元素
我有一份过去三年的数据清单,但所有的日期都有不同的时间。我试图写一个宏,将删除所有的时间。我试图改变单元格的格式,但没有成功 列表如下所示: 10/12/2011 08:41 PM Eastern Time 10/12/2011 08:41 PM Eastern Time 10/12/2011 08:41 PM Eastern Time 10/12/2011 08:41 PM Eastern Time 10/12/2011 08:41 PM Eastern Time 10/12/2011 08:41 PM Eastern Time 10/12/2011 08:41 PM Eastern Time 10/12/2011 08:41 PM Eastern Time 2011年12月10日东部时间晚上8:41 2011年12月10日东部时间晚上8:41 2011年12月10日东部时间晚上8:41 2011年12月10日东部时间晚上8:41 2011年12月10日东部时间晚上8:41 2011年12月10日东部时间晚上8:41 2011年12月10日东部时间晚上8:41 2011年12月10日东部时间晚上8:41 我需要删除东部时间晚上8:41的Excel 删除长日期格式的时间元素,excel,datetime,excel-formula,Excel,Datetime,Excel Formula,我有一份过去三年的数据清单,但所有的日期都有不同的时间。我试图写一个宏,将删除所有的时间。我试图改变单元格的格式,但没有成功 列表如下所示: 10/12/2011 08:41 PM Eastern Time 10/12/2011 08:41 PM Eastern Time 10/12/2011 08:41 PM Eastern Time 10/12/2011 08:41 PM Eastern Time 10/12/2011 08:41 PM Eastern Time 10/12/2011 08:
。但所有的时间都不同。有什么想法吗?为什么不简单地:
=左(A1,10)
假设所有日期看起来都是相同的(mm/dd/yyyy)格式以防它不总是前十个字符(例如:2011年1月1日或2012年3月14日),您可以使用此公式。请确保将单元格格式设置为日期:
=--LEFT(A1,FIND(" ",A1)-1)
如果实际使用日期格式,请尝试使用=INT(A1)
然后选择适合的格式
这应包括文本或时间格式:
=IF(CELL("type",A1)="l",LEFT(A1,FIND(" ",A1)),INT(A1))
甚至:
=TEXT(IF(CELL("type",A1)="l",LEFT(A1,FIND(" ",A1)),INT(A1)),"mm/dd/yyyy")
如果输出格式为mm/dd/yyyy。如果字段是excel日期而不是纯文本,则可以使用trunc函数。它应该减少时间部分
=TRUNC(A1)
不知道为什么在任何答案中都没有提到这一点,因为这是迄今为止最快、最简单的方法。如果日期尚未采用excel日期格式,则可以使用DATEVALUE将日期从文本转换为excel日期
一旦日期采用数字格式(例如42753.597534,excel将其识别为2017年1月18日下午2:20:27):excel将日期等同于数字,1相当于24小时(1天),而小于1的任何值都用于表示时间。您可以使用舍入(A1,0),它将删除日期中隐含地去除时间的任何非整数部分(将上述数字转换为42753或2017年1月18日)。如何=左(A1,10)
是以mm/dd/yyyy开始的所有日期
如果是这样,如果日期格式不起作用,那么这可能是一个字符串,因此您可以使用LEFT(…,10)
。当我尝试时,它只返回一个随机数,而不是日期。我猜您正在考虑我的解决方案。“随机数”是Excel使用的日期代码。正如我在解决方案中所说,您需要将单元格(包含输出日期代码的公式的单元格)格式化为日期。然后单元格将正确显示日期。我确实将其格式化为日期/