将相关数据从一个 table 提取到另一个

Extract related data from one table to another

这是我的工作表,它没有正确显示在 google 文档中,因此您可能需要下载:

https://drive.google.com/open?id=1Im8RY_cokV2NBtkU9YwMhzkVWwUT_Gn_

我需要从第一个 table 中获取数据,对其进行一些格式化,然后将其输入到第二个 table 中。我在第二个选项卡中放了一个例子。我正在制作一个模板,我将原始数据粘贴到第一个选项卡中,第二个选项卡将突出显示需要更正的任何问题。

我认为工作表中的注释解释了我要做什么。

你可以从两个方面来思考你的问题。

首先,您要创建唯一值的动态列表 "File Name" 或 "Summary" 选项卡上的 B 列。您可以按照 this question

中的答案进行操作

第二种(更简单但静态的)方法是将第一个选项卡中的 B 列粘贴到第二个选项卡的 A 列中,然后单击 [=47= 下方的 "Remove Duplicates" 按钮] 选项卡位于 Excel 的 "Data" 选项卡的 "Data Tools" 部分。

获得唯一值列表后,收集其余值所需要做的就是组合使用 TEXTJOINIF 数组函数

所以在 Sheet4 上,使用

{=MID(TEXTJOIN(,TRUE,IF($A3=Summary!$B:$B047,IF(LEFT(Summary!$C:$C047,11)="MARK DETAIL",Summary!$C:$C047,""),"")),14,100)}

第二个IF语句查找以MARK DETAIL开头的单元格,第一个IF语句过滤匹配的文件名,TEXTJOIN将所有结果串在一起,然后MID 函数切断了 MARK DETAIL

您可以将此功能修改为

{=TEXTJOIN(,TRUE,IF($A3=Summary!$B:$B047,IF(LEFT(Summary!$A:$A047,4)="HEAD",Summary!$D:$D047,""),""))}

C 列和

{=TEXTJOIN(,TRUE,IF($A3=Summary!$B:$B047,IF(LEFT(Summary!$A:$A047,4)="OEM_",Summary!$E:$E047,""),""))}

D 列

请注意,这些公式都是数组函数,这意味着您必须将它们输入到单元格中,然后按 Ctrl+Shift+Enter

激活它们