怎么将两个表格合并为一个表格,并且每个表格都有代码和计量单位?

发布网友 发布时间:2024-10-23 21:55

我来回答

1个回答

热心网友 时间:2024-11-05 22:59

1.现有一张EXCEL工作表,第一列为“代码”,第二列为“计量单位”,第一列有很多重复的代码对应第二列不同的计量单位,现需要将这种格式合并成右边的格式,也就是代码是唯一的,代码对应的计量单位用分行隔开。

请点击输入图片描述

2

2.选中“源数据”表的A2:A171区域,将名称定义为“代码”。

请点击输入图片描述

3

3. 选中“源数据”表的B1:B171区域,将名称定义为“计量单位”。

请点击输入图片描述

4

4.将“源数据”表中的A列复制到“处理过程”表A列里。

请点击输入图片描述

5

5.选中“处理过程”表中的代码,依次点击“数据”—“删除重复项”,使得代码只保留唯一值。

请点击输入图片描述

6

6.发现117个重复值,保留了53个唯一值。

请点击输入图片描述

7.在“处理过程”表C2单元格输入公式“=COUNTIF(代码,A2)”,统计各代码对应有几条“计量单位”记录。

请点击输入图片描述

8.将“处理过程”表C2单元格的公式向下复制到“代码”行的最后一个代码所在的行。这样每个代码所对应的记录条数都统计出来了。

请点击输入图片描述

9.在“处理过程”表D2单元格输入公式“=MAX(C2:C54)”,统计出各代码对应的记录条数的最大值,本例的最大值是“13”,也就是说某个代码对应的计量单位的最大记录条数是13。

请点击输入图片描述

10.在“处理过程”表E1单元格输入公式“=COLUMN()-4”,使得E1单元格的值等于1,然后将公式向右复制到Q1单元格,Q1单元格的值等于13,也就是记录条数的最大值。

请点击输入图片描述

11.在“处理过程”表E2单元格输入公式“=IFERROR(IF(F2<>"",INDEX(计量单位,SMALL(IF(代码=$A2,ROW($2:$171),99999),E$1))&";",INDEX(计量单位,SMALL(IF(代码=$A2,ROW($2:$171),99999),E$1))&""),"")”,然后同时按下“shift+Ctrl+enter”键,生成数组公式。

请点击输入图片描述

12.将这个数组公式向右复制到Q2单元格,然后再将E2:Q2的公式向下复制到E54:Q54。

请点击输入图片描述

13.此时,各代码所对应的记录全部生成到E2:Q54单元格了。

请点击输入图片描述

14.在“处理过程”表B2单元格输入公式“=CONCATENATE(E2,F2,G2,H2,I2,J2,K2,L2,M2,N2,O2,P2,Q2)”,将E2:Q2单元格的文本合并到B2单元格。

请点击输入图片描述

15.将B2单元格的公式向下复制到B54单元格。

请点击输入图片描述

16. 此时,各代码所对应的记录全部合并到B列的单元格里,并用分号进行了分割。如果需要在其他EXCEL工作表中使用处理过的结果,请使用“选择性粘贴—数值”,以免出现错误。

请点击输入图片描述

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com