在Excel中将月份编号从完整日期单元格转换为文本月份

时间:2017-09-25 21:00:52

标签: excel date formula

所以我有一个很长的专栏,名称是日期和时间,如下所示: 14/01/2017 03:30
(他们是DD / MM / YYYY HH:MM)

我需要获取月份编号并将其显示为文本,例如1月,2月等。 如果我将目标单元格格式化为' MMM'所有列单元格显示1月,即使给定的月份是2,3,或者让我们说12。我也尝试了公式= TEXT(L2," mmmm")(因为给定的信息来了来自F栏。

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

听起来您的日期和时间存储为文本而不是excels序列日期格式。您可以通过将单元格的格式更改为常规来检查这一点,并查看是否有任何更改,如果其文本没有任何更改。另一种方法是使用公式=istext(A1),其中A1是一个带有日期的单元格。

现在假设你确实有文本格式的日期,我建议将它们转换为excels date serial。有很多方法可以做到这一点。我会告诉你一个方法。

这将删除文本的每个组成部分,然后重新组合它。我们假设您的日期是A1

剥离年度

=MID(A1,7,4)

删除月份

=MID(A1,4,2)

剥离一天

=LEFT(A1,2)

现在重新组合:

=DATE(MID(A1,7,4),MID(A1,4,2),LEFT(A1,2))

这将为您提供整数格式的日期,然后excel可以转身并根据需要显示。

为了不丢失时间组件,您应该关闭该部分,并将其与日期相结合。记住日期是一个整数,时间是小数点后的所有内容。把时间想象成一天的一小部分。

要暂停使用:

=RIGHT(A1,5)

并将其转换为excel时间:

=TIMEVALUE(RIGHT(A1,5))

并将两者放在一起,只需添加:

=DATE(MID(A1,7,4),MID(A1,4,2),LEFT(A1,2)+TIMEVALUE(RIGHT(A1,5))

这一切的关键部分是您需要格式化该单元格以显示您想要的内容。您可以从下拉菜单中选择预格式化的样式,也可以应用自定义格式。将自定义格式设置为MMMM应仅显示月份的全名。

如果您确实需要月份文本而不仅仅是格式,那么您可以使用问题中的公式:

=TEXT(<insert appropriate formula from above>,"mmmm")

答案 1 :(得分:1)

尝试使用MID获取月份,然后TEXT()

=TEXT(MID(A1,SEARCH("/",A1)+1,2),"MMMM")