如何在Excel中提取两个竖线|之间的数据
Excel提取指定竖线间内容的解决方法
方法1:查找替换(通配符模式)
你之前用*|替换出错,是因为通配符里的*会匹配任意字符(包括竖线),导致误删目标内容。正确操作:
- 选中要处理的单元格区域
- 按
Ctrl+H打开查找替换窗口 - 点击「更多」,勾选「使用通配符」
- 第一步:删除第一个竖线及之前的内容
- 查找内容:
* |(注意竖线前后的空格,和数据格式对应) - 替换为:(空内容)
- 点击「全部替换」
- 查找内容:
- 第二步:删除第二个竖线及之后的内容
- 查找内容:
| *(保留竖线前后的空格) - 替换为:(空内容)
- 点击「全部替换」
处理后,带双竖线的行仅保留中间内容,无竖线的行原样保留。
- 查找内容:
方法2:公式提取法
假设数据在A列,在B1单元格输入以下公式,下拉填充即可:
=IFERROR(MID(A1,FIND("|",A1)+2,FIND("|",A1,FIND("|",A1)+1)-FIND("|",A1)-2),A1)
- 逻辑说明:用
FIND定位两个竖线的位置,通过MID提取中间内容;IFERROR处理无竖线的行,直接返回原数据。
方法3:Power Query批量处理(适合大数据量)
- 选中数据区域,点击「数据」选项卡 → 「从表格/区域」(按需勾选「我的表格有标题」)
- 在Power Query编辑器中,选中数据列,点击「转换」→「拆分列」→「按分隔符」
- 分隔符选「自定义」,输入
|,拆分方式选「按出现的次数」,输入2 - 删除拆分后的第一列和第三列,只保留中间列
- 点击「主页」→「关闭并上载」,提取结果会导入新工作表
内容的提问来源于stack exchange,提问作者Iamlearner
相关产品推荐
相关产品推荐

