MID函数是WPS表格中提取中间字符最直接有效的工具,需指定文本、起始位置(≥1)和字符数三个参数,可结合FIND定位动态分隔符、TRIM/SUBSTITUTE清洗数据,并支持多段提取拼接。

如果您需要从WPS表格中的一段文本里截取位于中间位置的特定字符,MID函数是最直接有效的工具。以下是使用MID函数提取中间字符的具体操作方法:
一、理解MID函数的基本语法与参数含义
MID函数用于从文本字符串的指定起始位置开始,按指定长度提取子字符串。它必须提供三个参数:原始文本、起始位置(从1开始计数)、提取字符数。这三个参数缺一不可,且起始位置不能为0或负数。
1、在单元格中输入公式:=MID(文本,起始位置,字符数)。
2、文本可以是直接用英文双引号括起的字符串,例如"ABCDE";也可以是引用其他单元格,例如A1。
3、起始位置必须为大于等于1的整数,若起始位置超过原文本长度,结果返回空文本。
4、字符数应为非负整数,若字符数为0,结果返回空文本;若超出剩余字符数,仅提取到末尾。
二、从固定位置提取固定长度的中间字符
适用于已知目标字符在原文本中的确切起始点和长度的情形,例如从身份证号第7位起取8位表示出生日期。
1、假设A1单元格内容为"张三_20230512_销售部",需提取下划线之间的日期部分(共8位)。
2、观察可知日期从第5位开始("2"的位置),共8个字符。
3、在B1单元格输入公式:=MID(A1,5,8)。
4、按回车确认,B1将显示"20230512"。
三、结合FIND函数动态定位起始位置
当目标字段前后有固定分隔符(如“-”、“_”、“/”),但其出现位置不固定时,可用FIND函数辅助确定起始点,提升公式的通用性。
1、假设A2单元格内容为"订单-2024001-华东",需提取“-”之后、“-”之前的编号部分。
2、先用FIND定位第一个“-”:FIND("-",A2)返回3;再定位第二个“-”:FIND("-",A2,FIND("-",A2)+1)返回11。
3、编号起始位置为第一个“-”后一位,即FIND("-",A2)+1;长度为两“-”位置差减1,即FIND("-",A2,FIND("-",A2)+1)-FIND("-",A2)-1。
4、在B2单元格输入公式:=MID(A2,FIND("-",A2)+1,FIND("-",A2,FIND("-",A2)+1)-FIND("-",A2)-1)。
5、按回车确认,B2将显示"2024001"。
四、处理含空格或不可见字符的文本
原始数据常因复制粘贴引入首尾空格、制表符或换行符,导致MID提取错位。需预先清理干扰字符以保障定位准确。
1、对A3单元格内容使用TRIM函数去除首尾空格:=TRIM(A3)。
2、进一步清除所有不可见字符(如CHAR(9)制表符、CHAR(10)换行符),嵌套SUBSTITUTE函数:=SUBSTITUTE(SUBSTITUTE(TRIM(A3),CHAR(10),""),CHAR(9),"")。
3、将清洗后的结果作为MID函数的文本参数,例如:=MID(SUBSTITUTE(SUBSTITUTE(TRIM(A3),CHAR(10),""),CHAR(9),""),2,5)。
4、务必先清洗再定位,否则FIND可能返回错误值#VALUE!。
五、批量提取多段中间内容并拼接
当需从同一字符串中提取多个不连续的中间片段,并合并为新字符串时,可叠加多个MID函数并用连接符&组合。
1、假设A4单元格内容为"SN:XYZ789-REV:B2-DATE:20240601",需提取产品编号(XYZ789)、版本号(B2)、日期(20240601)并用短横线连接。
2、定位"SN:"后3位起的6字符:MID(A4,FIND("SN:",A4)+3,6)。
3、定位"REV:"后4位起的2字符:MID(A4,FIND("REV:",A4)+4,2)。
4、定位"DATE:"后5位起的8字符:MID(A4,FIND("DATE:",A4)+5,8)。
5、在B4单元格输入公式:=MID(A4,FIND("SN:",A4)+3,6)&"-"&MID(A4,FIND("REV:",A4)+4,2)&"-"&MID(A4,FIND("DATE:",A4)+5,8)。
6、按回车确认,B4将显示"XYZ789-B2-20240601"。










