📥 本章配套练习册(数据已录入、写完公式自动判分):点击下载 第05章-MID函数-练习.xlsx
难度:⭐⭐ | 建议用时:30 分钟 | 前置知识:第04章 RIGHT
本章学习目标
- 会用 MID 从文本的任意位置提取指定长度的字符
- 掌握"第 7 位开始取 4 位"这类定位思维(身份证提取生日是职场标配技能)
- 知道 MID 取出的是文本,学会转成数字
一、这个函数是干什么的?
MID 的英文意思是"中间"。RIGHT 只能从尾巴开始取,而 MID 可以从文本的任何位置开始,取任意长度。
生活化理解:一根 18 节的甘蔗,RIGHT 只能从末尾砍,MID 则可以从第 7 节开始砍 4 节下来——指哪打哪。
二、语法结构
|
|
| 参数 | 说明 |
|---|---|
| 文本 | 要从中提取的那段文字 |
| 从第几个字符开始 | 起点位置,从 1 开始数(第 1 个字符的位置是 1,不是 0) |
| 提取几个字符 | 从起点开始往右取几个 |
三个参数都不能省略。
三、基础示例(手把手)
示例1:从日期文本中提取月份
A2 单元格是文本 20260728(表示 2026年7月28日)。
先把位置标出来:
|
|
提取月份 07:
|
|
结果:07
解读:从第 5 个字符(0)开始,往右取 2 个 → 07。
示例2:从身份证号提取出生年份(职场经典案例)
18 位身份证号的结构是固定的:
|
|
身份证号 110105199003078834 在 A2,提取出生年份:
|
|
结果:1990
解读:年份从第 7 位开始,共 4 位。同理,月份是第 11 位开始取 2 位,日期是第 13 位开始取 2 位。
示例3:起点位置怎么数?
新手最大的难点是"从第几位开始"数不明白。方法:在脑子里(或纸上)给每个字符标上序号。
以电话号码 010-88886666 为例:
|
|
想提取区号后面的 8888:区号 010 占 1-3 位,- 占第 4 位,所以号码从第 5 位开始,取 4 位:
|
|
结果:8888
四、进阶用法
1. 提取结果转数字
MID 取出的 07 是文本。如果要做计算(比如判断月份大小),乘 1 转换:
|
|
07 → 数字 7。
2. 参数超出范围时不会报错
- 提取长度超过剩余字符:取到结尾为止,不报错
=MID("abc", 2, 100)→bc - 起点超过文本长度:返回空文本
=MID("abc", 10, 2)→ (空白)
3. MID + RIGHT 分工
- 位置固定的编码(身份证、统一格式的单号)→ MID 直接定位
- 只取末尾 → RIGHT 更省事
- 只取开头 → LEFT 更省事
五、常见错误与注意事项
| 问题 | 原因 | 解决 |
|---|---|---|
| 提取结果偏了一位 | 起点数错(最常见!) | 把字符和位置一一对应标出来再数 |
| 忘记分隔符占位置 | -、空格也占一个位置 |
数位置时把符号也算进去 |
| 取出的"数字"不能求和 | MID 结果是文本 | 乘 1 转数字 |
| 结果显示 1990 而不是 03 | 起点和长度写反 | 记住顺序:先起点,后长度 |
| 身份证号变科学计数法 | 录入时被当成数字 | 先设单元格为"文本"格式再录入 |
六、练习题(请先独立完成)
练习数据准备
⚠️ 录入前,请先把 B 列设置为"文本"格式(选中 B 列 → 右键 → 设置单元格格式 → 文本),否则长数字可能被科学计数法显示。
| A | B | |
|---|---|---|
| 1 | 项目 | 内容 |
| 2 | 身份证号 | 110105199003078834 |
| 3 | 产品编码 | CN-BJ-2026-0501 |
| 4 | 日期文本 | 20260728 |
| 5 | 电话号码 | 010-88886666 |
题目
| 题号 | 题目 | 在何处作答 |
|---|---|---|
| 1 | 从身份证号中提取出生年份(4位) | C2 |
| 2 | 从身份证号中提取出生月份(2位) | C3 |
| 3 | 从身份证号中提取出生日(2位) | C4 |
| 4 | 从日期文本 20260728 中提取月份 | C5 |
| 5 | 从电话号码中提取区号后面的前 4 位号码(8888) | C6 |
| 6 | 从产品编码中提取年份 2026(先数清楚它从第几位开始) | C7 |
| 7 | 思考:执行 =MID(B4,5,2)*3,结果是多少?说明什么? |
C8 |
七、练习讲解(做完再看)
第1~3题讲解
身份证号结构:110105(1-6位)+ 1990(7-10位)+ 03(11-12位)+ 07(13-14位)。
- 年份:第 7 位开始取 4 位 →
=MID(B2,7,4)→ 1990 - 月份:第 11 位开始取 2 位 →
=MID(B2,11,2)→ 03 - 日:第 13 位开始取 2 位 →
=MID(B2,13,2)→ 07
记忆口诀:7-4、11-2、13-2。这是人力资源工作中用得最多的三个 MID。
第4题讲解
20260728:年占 1-4 位,月从第 5 位开始取 2 位 → =MID(B4,5,2) → 07。
第5题讲解
010-88886666:010 占 1-3 位,- 占第 4 位,号码从第 5 位开始 → =MID(B5,5,4) → 8888。分隔符占位置是新手最常漏算的。
第6题讲解
CN-BJ-2026-0501:CN 占 1-2 位,- 第 3 位,BJ 占 4-5 位,- 第 6 位,所以 2026 从第 7 位开始 → =MID(B3,7,4) → 2026。
数位置的正确姿势:一段一段累加(2个字母+1个符号+2个字母+1个符号 = 6 位,下一位就是 7)。
第7题讲解
=MID(B4,5,2)*3:先取出文本 07,乘 3 时 Excel 自动把文本 07 转成数字 7,7×3 = 21。
说明:MID 取出的是文本,但文本型数字参与算术运算时会自动转换。不过依赖自动转换不是好习惯,明确写 *1 更稳妥。
八、参考答案
| 题号 | 公式 | 结果 |
|---|---|---|
| 1 | =MID(B2,7,4) |
1990 |
| 2 | =MID(B2,11,2) |
03 |
| 3 | =MID(B2,13,2) |
07 |
| 4 | =MID(B4,5,2) |
07 |
| 5 | =MID(B5,5,4) |
8888 |
| 6 | =MID(B3,7,4) |
2026 |
| 7 | =MID(B4,5,2)*3 |
21 |
本章小结
=MID(文本, 起点, 长度):起点从 1 开始数,三个参数缺一不可- 数位置的技巧:把字符挨个标序号,分隔符、空格都占位
- 身份证提取生日 = MID 的招牌应用:年(7,4)、月(11,2)、日(13,2)
- MID 取出的是文本,当数字用乘 1
下一章:第06章:IF 函数