Excel 2007 将数字转换为长文本格式

Excel 2007 将数字转换为长文本格式

我想将日期“dd/mm/yyyy”转换为文字形式,如 01/12/1990 到 1990 年 12 月 1 日”。我必须转换大量学生数据以发放 T C。有人能帮帮我吗?

答案1

没有内置的 Excel 函数可以按照您需要的方式将日期转换为文本。

有很多种方法可以做到这一点。最简单的方法是使用 VB 宏,如下所示techie007建议。

如果您想不使用宏来执行此操作,以下内容可能会有所帮助。

月份:这很简单。您可以使用自定义格式将月份显示为文本(输入“MMMM”作为自定义格式)。作为公式的一部分,您可以使用 =TEXT(...) 执行此操作,例如

=TEXT(A1,"MMMM")

将把 A1 中的日期转换为月份名称。

没有格式来显示日期(除了星期几,但这不是你要求的)或年份作为文本。我能想到两个可以用来查找文本的函数:

您可以使用 =CHOOSE(...) 或 =VLOOKUP(...)。同样,假设日期在 A1 中,您可以使用以下方法获取日期作为单词

=CHOOSE(DAY(A1), "First", "Second", "Third", "Fourth", ...)

(添加剩余的单词代替“...”)

您可以对年份做类似的事情,显然限制了可能发生的年份。

对于 VLOOKUP,您需要在某处(例如在另一张工作表上)创建一个列表,第一列包含数字(例如,1、2、3、... 表示日期),第二列包含单词(第一、第二、第三、...)。假设此列表在 Sheet2 的单元格 A1:B31 中,查找日期的公式为

=VLOOKUP(DAY(A1), Sheet2!A1:B31)

按照上述说明计算出日、月和年,并使用 & 符号将它们连接起来。

我会采纳 techie007 的建议并使用 VB 宏来执行此操作。

答案2

主要由@ssollinger 介绍,但使用单一公式和查找表:

SU499493 示例

相关内容