Answers:
如其他答案中所述,您可以创建一个包含实际日期值的帮助列,并根据该列进行排序。我认为最简单的方法是使用在文本=DATEVALUE(A2&"1")
中A2
保存月份名称的位置。这将为您提供当年每个月的第一天,但这仅适用于排序目的。
但是,您可能没有能力或权利这样做。在这种情况下,您可以在Excel中添加自定义排序列表。打开排序对话框后,Custom List...
在Order
下拉列表中选择。
在打开的对话框窗口中,单击NEW LIST
左侧,然后在右侧创建列表,使用换行符分隔每个项目。完成后,单击Add
。
正如您所看到的,我已经为一周中的几天和一年中的几个月创建了短版和长版。完成添加所需的任何列表后,在左侧列表中选择它,然后单击OK
。
我们很难理解你的问题。当你输入月份名字作为文字时,我想你很难过
并在列上设置过滤器,然后单击过滤器三角形:
值按字母顺序列出。
一种解决方案是创建一个辅助列,B2
等于
=TEXT(MONTH(DATEVALUE(A2 & "1")), "0# ") & A2`
并拖了下来:
A2 & "1"
将裸月name(JAN
)转换为看起来像日期(JAN1
)的东西。DATEVALUE(A2 & "1")
将该日期字符串转换为数字日期/时间值。MONTH(DATEVALUE(A2 & "1"))
从该日期值计算月份编号(1-12)。TEXT(MONTH(DATEVALUE(A2 & "1")), "0# ")
格式为前导零(必要时)和尾随空格的数字。TEXT(MONTH(DATEVALUE(A2 & "1")), "0# ") & A2
将两位数字与月份名称连接起来。现在,如果您筛选该列,则按正确的顺序列出月份:
您可以将此辅助列放在列中Z
,它将在视线之外,或者您可以将其隐藏,仅将其取消隐藏,以便更改过滤器。