Microsoft Excel - 公式/函数将信息解析到以“|”分隔的单元格中的列中

Microsoft Excel - 公式/函数将信息解析到以“|”分隔的单元格中的列中

我正在处理产品订购信息的 CSV 导出。A 列包含交易 ID,有问题的 B 列格式如下:

product_name:生存包|product_option_name:(1) MEGA 生存包|数量:1|价格:15.0|总计:15.0;product_name:天气河马贴纸|product_option_name:(5) 天气河马贴纸|数量:1|价格:2.0|总计:2.0;product_name:沃尔多河马贴纸|product_option_name:(5) 沃尔多河马贴纸|数量:1|价格:2.0|总计:2.0

是否有一个公式可以将产品、数量和价格分成不同的列?

谢谢您的帮助,我不希望手动完成此操作。

答案1

实现此目的的快速方法如下。

首先将数据保存到文本文件(仅限文本)。然后在 Excel 中打开文本文件,导入功能就会出现。选择“分隔符”,然后选择另一个框并键入“|”(它位于我电脑上的正斜杠上方。看起来像键上的两个直立破折号)。单击下一步,然后单击结束,Excel 将导入到列中。

但是,您可能需要进行一些清理工作,因为标题词将和数据一起进入该单元格。我不会使用任何公式,而是使用查找和替换 (CTRL H)。它可以更快地删除标题。我假设您不想要“:”后面的任何单词。

因此,我会在查找框中使用“*:”,并将替换框留空。这样会删除“:”后面的所有内容,我添加了一个空格,因此您也可以删除“:”后面的空格。根据实际需要进行自定义。

这是删除不需要的数据的一种非常快捷的方法。

干杯

答案2

C1进入:

=TRIM(MID(SUBSTITUTE($B1,"|",REPT(" ",999)),COLUMNS($A:A)*999-998,999))

并复制:

在此处输入图片描述

相关内容