以下是一份关于Excel中时间与日期功能的系统学习指南,内容涵盖基础知识、常用函数和实用技巧:
一、基础认知
1.存储原理
- 日期:以序列号存储(1900/1/1=1,当单元格输入1时,系统默认为1天,换算成日期格式则为1900/1/1,excel时间从1900年1月1号开始算起。)
- 时间:小数形式存储(0.5=12:00:00,即为半天)
- 验证:输入`=NOW()`显示当前日期时间,设置单元格格式为常规可见数字形式
2. 输入规范
- 日期输入:`2023-08-20` 或 `2023/8/20`
- 时间输入:`14:30` 或 `2:30 PM`
- 组合输入:`2023-08-20 14:30`
二、格式化技巧
1. 快捷操作:
- `Ctrl+;` 插入当前日期
- `Ctrl+Shift+;` 插入当前时间
- `Ctrl+1` 打开格式设置窗口
2. 自定义格式代码:
操作:选中单元格,点击右键,选择设置单元格格式,在数字中找到自定义,在类型框中修改,可得到以下格式。
- 日期:`yyyy-mm-dd` → 2023-08-20
- 时间:`hh:mm AM/PM` → 02:30 PM
以下会详细介绍代码用法,所以小伙伴不要着急,耐心往下翻就可以啦!
三、核心函数库
以下是Excel中与日期相关的常用函数介绍,包括YEAR、MONTH、DAY、DATE、DATEDIF、WEEKNUM、WEEKDAY的详细说明和用法示例:
1. YEAR 函数
-功能:提取日期中的年份。
-语法:`=YEAR(日期)`
-示例:
=YEAR("2023-08-20") '返回 2023
=YEAR(A1) '提取A1单元格日期的年份
2. MONTH 函数
-功能:提取日期中的月份。
-语法:`=MONTH(日期)`
-示例:
=MONTH("2023-08-20") '返回 8
=MONTH(A1) '提取A1单元格日期的月份
3. DAY 函数
-功能:提取日期中的天数。
-语法:`=DAY(日期)`
-示例:
=DAY("2023-08-20") '返回 20
=DAY(A1) '提取A1单元格日期的天数
4. DATE 函数
-功能:根据指定的年、月、日生成日期。
-语法:`=DATE(某年, 某月, 某日)`
-示例:
=DATE(2023, 8, 20) '返回 2023-08-20
=DATE(YEAR(A1), MONTH(A1)+1, DAY(A1)) '将A1日期的月份加1
5. DATEDIF 函数
-功能:计算两个日期之间的差值(包括天数、月数或年数)。
-语法:`=DATEDIF(开始日期, 结束日期, 类型)`
(1)类型:
- `"y"`:计算整年数
- `"m"`:计算整月数
- `"d"`:计算天数
- `"ym"`:忽略年和日的整月数
- `"yd"`:忽略年的天数
- `"md"`:忽略年和月的天数
-示例:
=DATEDIF("2023-01-01", "2023-08-20", "d") '返回 231(天数)
=DATEDIF(A1, B1, "m") '计算A1和B1之间的整月数
6. WEEKNUM 函数
-功能:返回日期在一年中的周数。
-语法:`=WEEKNUM(日期, 返回类型)`
(1)返回类型(可选):
- `1` 或省略:周从星期日开始
- `2`:周从星期一开始
-示例:
=WEEKNUM("2023-08-20") '返回 34(第34周)
=WEEKNUM(A1, 2) '以周一开始计算A1单元格日期周数
7. WEEKDAY 函数
-功能:返回日期对应的星期几。
-语:`=WEEKDAY(日期, 返回类型)`
(1)返回类型(可选):
- `1` 或省略:1(星期日)到 7(星期六)
- `2`:1(星期一)到 7(星期日)
- `3`:0(星期一)到 6(星期日)
-示例:
=WEEKDAY("2023-08-20") '返回 1(星期日)
=WEEKDAY(A1, 2) '返回 A1单元格日期对应星期几,且以周一为第1天
8. TEXT 函数
-功能:将数值、日期或时间转换为指定格式的文本,常用于自定义数据显示格式,或将数据与其他文本结合。
-语法:=TEXT(值, 格式代码)
(1)语法介绍
-值:需要转换的数值、日期或时间。
-格式代码:指定转换后的文本格式(需用双引号括起来)。
(2)格式代码详解
(2.1)当为数值格式时:
- `0`:显示数字,不足位数补零。
- `#`:显示数字,不足位数不补零。
- `.`:小数点。
- `,`:千位分隔符。
- `%`:百分比格式。
- `$`:货币符号。
(2.1.1)示例:
=TEXT(1234.567, "0.00") '返回 "1234.57"
=TEXT(1234.567, "#,##0.00") '返回 "1,234.57"
=TEXT(0.25, "0%") '返回 "25%"
=TEXT(1234.567, "$#,##0.00") '返回 "$1,234.57"
```
(2.2)当为日期格式时:
- `yyyy`:四位年份(如 2023)。
- `yy`:两位年份(如 23)。
- `mm`:两位月份(如 08)。
- `dd`:两位天数(如 20)。
- `aaaa`:星期几(如 星期一)。
- `ddd`:缩写的星期几(如 周一)。
(2.2.1)示例:
=TEXT("2023-08-20", "yyyy年mm月dd日") '返回 "2023年08月20日"
=TEXT("2023-08-20", "aaaa") '返回 "星期日"
=TEXT("2023-08-20", "yyyy/mm/dd ddd") '返回 "2023/08/20 周日"
```
(2.3)当为时间格式时:
- `hh`:小时(24小时制)。
- `mm`:分钟。
- `ss`:秒。
- `AM/PM`:12小时制时间。
(2.3.1)示例:
=TEXT("14:30:00", "hh:mm AM/PM") '返回 "02:30 PM"
=TEXT("14:30:00", "hh时mm分ss秒") '返回 "14时30分00秒"
-注意事项
(1)结果为文本:TEXT 函数的返回值是文本类型,无法直接参与数值计算。
(2)格式代码区分大小写:如 `mm` 表示月份,`MM` 无效。
(3)日期和时间的区域设置:部分格式代码可能因系统区域设置不同而显示不同结果。
四、综合应用示例
1. 计算员工年龄
=DATEDIF(出生日期, TODAY(), "y") & "岁"
2. 判断某天是星期几
=TEXT(WEEKDAY(A1), "aaaa") '返回 "星期一"
3. 计算某月的最后一天
=DATE(YEAR(A1), MONTH(A1)+1, 0) '返回当月最后一天
4. 计算项目剩余天数
=DATEDIF(TODAY(), 项目结束日期, "d") & "天"
通过掌握这些函数,您可以轻松处理日期数据,完成各种复杂的日期计算和分析任务!如果觉得很有用,给作者点个赞吧!