出于某些目的,军方使用所谓的“朱利安日期”的变体来记录特定日期。这种特殊的日期格式由年份数字(无前导零)组成,后跟绝对年份。因此,2019年7月9日将结束为19190。这显示年份(19,代表2019年),然后是该年的第190天(7月9日)。

并非只有军方会使用这种日期。其他一些行业也依赖这种日期格式。 Excel,但是,不依赖于这种类型的格式。取而代之的是,它使用更通用的格式来显示日期,并使用自己的序列号格式来内部存储日期。如果您需要处理儒略历(可能是在军队中),那么您可能想知道是否存在以这种方式格式化日期的方法。

简短的答案是没有本地方法可以做到这一点。 Excel的自定义格式设置功能不允许您指定一种显示年份的方法。因此,这意味着您必须使用公式返回儒略日期的数字值或包含儒略日期的文本字符串。

如果要返回包含格式化日期的文本字符串,则可以使用以下公式:

=RIGHT(YEAR(A1),2)&(A1-DATE(YEAR(A1),1,1)+1)

此公式假定单元格A1包含常规Excel日期。公式的第一部分(“&”号前的部分)返回年份的最后一位数字,“&”号后的部分从要转换的日期中减去当前年份的第一天,然后将1加到该日期。结果是一年中的第几天。

如果儒略历日期的年中部分必须始终为三位数,那么您需要对公式进行一些修改。如上所述,该公式的最后一部分将返回1、2或3位数字。如果始终需要为3,则使用它来代替:

=RIGHT(YEAR(A1),2)&RIGHT("000"&(A1-DATE(YEAR(A1),1,1)+1),3)

如果您希望公式返回数字而不是文本字符串,则可以将整个公式包含在VALUE函数中,或者可以将公式中的年份数字乘以1000。两种方法都显示在这里:

=VALUE(RIGHT(YEAR(A1),2)&RIGHT("000"&(A1-DATE(YEAR(A1),1,1)+1),3))

=RIGHT(YEAR(A1),1)*1000+(A1-DATE(YEAR(A1),1,1)+1)

您还可以在Microsoft Office支持中找到有关使用儒略日期的信息:

https://support.office.com/en-us/article/Insert-Julian-dates-Functions-0c7fa6aa-daff-402e-9990-93a5b76ba018

Chip Pearson的网站上还有其他可用信息:

http://www.cpearson.com/excel/jdates.htm

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(9150)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。您可以在此处为Excel的较早菜单界面找到此技巧的版本: