我总是得到如A 列中所示的日期,但我需要如C 列中所示的日期。如何才能在不创建B 列帮助器的情况下做到这一点?我需要它,因为时间和分钟会扰乱我在此之后想要实现的目标。
A 列
带有小时和分钟的时间:
22/05/2015 14:57
11/06/2015 15:40
28/05/2015 08:27
26/05/2015 14:51
25/05/2015 14:18
25/05/2015 15:51
C 列
没有小时和分钟的时间:
22/05/2015
11/06/2015
28/05/2015
26/05/2015
25/05/2015
25/05/2015
我设法通过创建一个转换为文本的 B 列来解决这个问题
=Text(A2;"DD-MM-AAAA")
然后 C 列将文本转换为值
=Data.value(B2)
虽然这个过程有效,但它给我带来了很多不必要的数据,我想知道我是否可以使用 vba-excel 自动执行此操作宏一步到位。我还希望 C 列中的日期数始终等于A 列中的日期数,并且日期顺序相同。
最佳答案
要获取日期,请仅使用:
=INT(A2)
以及最新的格式。这是可行的,因为 Excel 中的日期是自 1899 年 12 月 31 日以来的天数,因此例如 2016 年 5 月 10 日是自 1899 年 12 月 31 日以来的 42500 天。
时间是基于 24 小时的小数。因此,2016 年 5 月 10 日 12:00:00 等于 42500.5。
为了得到日期,我们删除了小数点。 INT() 就是这样做的。
关于excel - 一步从日期中删除小时和分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37144005/