excel中如何按出生年月排序

我是一位老师,我想对每天过生日的学生,发封邮件或者一个短信以示祝贺,我现在将其花名册录入到Excel中了,可是如果每天一个个同学去看,实在是太辛苦,请问大家有没有一个好的方法,让我知道今天是谁过生日。(我输入的是1989-3-30,农历就是二月廿三日,我想快速的知道,)谢谢!

这太容易了。但是,你不能要求阳历和农历都完全相同,事实上如果让阳历与阴历完全重合,理论上的周期应该是60年,我觉得这没有什么必要,而且如果你要把每个人的生日转化为阴历,这种操作也是相当的繁琐,为了简单一点,我看你还是把这些农历的都转化为阳历更方便。因为EXCEL本身不知道农历是什么玩意儿。
你的表格中如果有出生年月这一栏,或者是有身份证一栏就可以实现,我以出生年月日的方式为你做一个样本:
A列为姓名,B列为出生年月日,你就可以用函数解决:
在表格的后面任意一个空列,如F列,F1是表头,在F2中输入以下公式:
=IF(AND(MONTH(B2)=MONTH(TODAY()),DAY(B2)=DAY(TODAY())),"今天过生日","")
并把这个公式在右下角的小黑点处向下拖动,到所有的学生记录。这样,每天你只要打开这个表格,过生日的学生就在F列中显示出来了。

看了一下楼上那位哥们的回答,虽然做得很好,用视频的方式,但是,用排序来解决这个问题,似乎不够直观和简洁,用这个函数公式,一次就可以解决,另外,这个公式也可以进行改造用于条件格式中,让每天一打开这个表格的时候,过生日的同学记录变成红色的,等等,另外,如果是表格中有身份证信息一栏的话,还可以让函数从身份证中直接提取出生年月日。基本的方法与些类似。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-01-02
  excel按出生年月排序方法如下:
  方法一:辅助列+公式
  例如下表为某公司员工出生日期列表,姓名在A2:A18区域中、出生日期在B2:B18区域中。
  姓名出生日期
  王冬1980-2-29
  吴淼1985-3-12
  周莉1988-12-5
  孙媛媛1987-6-8
  周建平1984-2-29
  孙力1985-4-26
  王国平1981-12-31
  郝丽丽1980-3-1
  孙璐1981-2-28
  周向东1988-1-1
  吴婷婷1984-9-10
  王晓依1983-5-15
  张琪琪1982-4-7
  顾成1986-3-25
  谭光辉1984-8-7
  戴红1981-7-16
  裴冬霞1984-3-1
  使用C列作为辅助列,在C2单元格中输入公式:
  =TEXT(B2,"mmdd")
  然后拖动填充柄将公式填充到C3:C18区域中。
  选择C2:C18区域中的任一单元格,单击工具栏中的A→Z按钮按升序排序。
  可以看到,姓名列已按月日进行了排序,最后删除辅助列。
  方法二:使用数据透视表
  Excel
2003:
  1.选择A1:B18区域中的任一单元格,单击菜单“数据→数据透视表和数据透视图”,在对话框中单击“完成”按钮。
  2.先后将“出生日期”字段和“姓名”字段拖到行区域中,“姓名”字段要位于“出生日期”字段右侧。
  3.取消汇总项:右击“出生日期”字段中的任一单元格,在弹出的快捷菜单中选择“字段设置”。
  在弹出的“数据透视表字段”对话框中,选择“无”。
  4.再次右击“出生日期”字段中的任一单元格,在弹出的快捷菜单中选择“组及显示明细数据→组合”,弹出“分组”对话框,在“步长”下选择“日”,此时“月”和“日”同时处于选中状态。单击“确定”按钮。
  Excel自动将“姓名”按月和日进行分组并排序。
  Excel
2007:
  1.选择A1:B18区域中的任一单元格,在功能区中选择“插入”选项卡,在“表”组中选择“数据透视表→数据透视表”。在弹出的对话框中单击“确定”按钮。
  2.在“数据透视表字段列表”中,先勾选“出生日期”字段,然后勾选“姓名”字段。在“行标签”中,“出生日期”字段在“姓名”字段的上方。
  3.在数据透视表中,右击任一日期,在弹出的快捷菜单中选择“组合”。弹出“分组”对话框,在“步长”下选择“日”,此时“月”和“日”同时处于选中状态。单击“确定”按钮。
  Excel自动将“姓名”按月和日进行分组并排序。