两个电子表格合并为一个 - 列中有重复的职位参考,但行上的信息不同 - 需要在同一行上

两个电子表格合并为一个 - 列中有重复的职位参考,但行上的信息不同 - 需要在同一行上

在此处输入图片描述

尝试从另外两个工作表创建一个工作表,这两个工作表包含一个列,其中的工作编号在不同行中重复,每行上的信息都不同,但我需要它们位于同一行

答案1

嗯,这一次,社区机器人是对的,你给出的图像看起来好像你很小心,让提供实际公式变得困难。所以这里的答案不会这样做。你必须自己掌握概念并编写公式。

对于您或将来遇到此问题的任何人来说,幸运的是,这实际上非常简单。

您有两组数据,它们至少共享一组唯一的匹配数据,因此可以清楚地知道哪些数据是组合在一起的,并且每个数据集中只有一个列,因此很容易寻址。(必须使用三列数据来制作一个键并不难,只是“冗长”使得公式更难阅读和理解。因此,虽然理论上很容易,但实际问题让它看起来更难。)

假设现有的两个数据集都是“完整的”——因为一个数据集中存在的每个工作编号也存在于另一个数据集中。例如,您无需通过说明如果一个数据集中缺少数据,您希望获得什么来表明不同。但您可以让这些单元格结果显示为空白"",并且在大多数情况下被视为空白。关于这一点,没有太多需要解决的问题。

如果它们的“大小”相同(现有电子表格中的所有职位编号都存在于另一个电子表格中,因此如果其中一个电子表格中有 1,000 个职位编号,另一个电子表格中有相同的 1,000 条记录,那么第一步就是选择其中一个(也许是掷硬币)作为新电子表格中职位编号的来源。如果一个电子表格的职位编号多于另一个,则选择记录较多的那个。

因此,在新电子表格的作业编号列中,在您希望它们开始的单元格中,放置一个如下公式,该公式仅指定所选旧电子表格中的范围地址:

=A2:A7234

您将问题标记为不需要旧版 Excel 的答案,因此我假设您具有Spill该功能。因此,一个公式将把Spill该电子表格的所有作业编号都放到该列中。最简单的方法是打开两个源电子表格和一个新电子表格,然后在创建公式时键入内容,=然后将鼠标移到正确的电子表格并单击起始单元格,然后单击结束单元格或键入其地址。这样,就可以为您编写正确的从另一个文件中读取的内容,而不必知道如何自己编写。

现在您有了工作编号列表,您需要两个电子表格中的其余数据。这里有选择。如果您想要一个非常简单的集合,您可以简单地扩展上面的公式以使用最右边的列,例如可能是 K 列,因此您的公式将如下所示:

=A2:K7234

并且所有 11 列(职位编号加上其他 10 列)都将Spill到位。然后,您可以通过箭头越过它们并在 L 列中输入公式来收集另一个电子表格的数据。

XLOOKUP如果不是功能受限(您一次只能从中获取一列),该公式可能很简单...VLOOKUP如果 Excel 允许在其公式中使用两个奇数,那么它也会运行良好。您可以编写如下代码:

=VLOOKUP(F2,A1:D10,{2,3,4},false)

它会返回该单个查找值的所有三列数据。(而不是{2,3,4},比如说,2只有我称之为奇数 #1。)但是将该单个查找值更改为垂直范围,它将仅返回这些列中的第一列,而不是所有三列。(使用查找值的范围是我所说的第二个奇数。)一次返回其中一个,您会得到您想要的,但一起得到 2-D 结果... 不行。

但是,INDEX会做得很好。实际上,INDEX/MATCH但是INDEX本身正在做“好事”,做着MATCH它通常做的事情,而不是“奇怪的”事情。所以,像这样:

=INDEX(L1:W7234,MATCH(A1:A7234,'[Other Spreadsheet]Sheet1'!A1:A7234,0),  {1,2,3,4,5,6,7,8,9,10,11,12})

除了最后一点我用几个空格与其余部分隔开之外,它是“沼泽标准”: {1,2,3,4,5,6,7,8,9,10,11,12}

如果有足够多的列使得输入成为一个很好的错误源,那么它实际上可以是一个函数: SEQUENCE(1,12)就可以了。

请注意,我没有写出INDEX包含工号列的范围。我不需要这样做,因为我已经有一列这样的列,不需要把它们带进来。通过省略它,我需要的范围内的数据列是数字 1 到任意数字,而不是数字 2 到任意数字,所以我不需要做任何令人讨厌的事情来编写数组常量或编写函数SEQUENCE

所以无论如何,这将收集第二个电子表格的非工作号码数据列。

全做完了。

您可能希望做出大量选择,这可能会使情况复杂化。如果您需要这样做,这是必要的。例如,您可能希望将两个电子表格中的列混合在一起,而不是分成两个单独的集合。您可能希望它们“乱序”(因此第一个电子表格中的第 4 列是新电子表格中的第 18 列,而第一个电子表格中的第 9 列是新电子表格中的第 3 列)。您可能只想使用它来将数据收集到一个匹配良好的集合中,然后立即将公式转换为简单文本并删除旧电子表格。您可能希望与您或其他人保持实时连接,将信息添加到现有(“旧”)电子表格中,并且这个电子表格将两者收集在一起。并且需要随着旧电子表格的增长而增长。

也许还有其他复杂情况。您甚至可能希望以一种并非真正最佳的方式来处理它,但您没有意识到,考虑到这些新的可能性,这种方式并不是必需的,因此您可能需要以一种允许您轻松更改新电子表格的方式来处理事情,因为您确实意识到了更好的方法,并且想要这样做。

例如,您可能希望能够移动包含公式的列。但将内容放入块中(如上所示)则不可能。因此,虽然您可能可以保留Spill每列中的功能,但您可能需要为每列设置单独的公式,以便移动它们。(如果在收集后立即转换为文本,则这不是问题,因为公式已经消失,并且不再有数据“块”。)

虽然有些事情以后可以改变,但有些事情以后可能比其他事情更难。所以提前考虑一下是有用的。你可以自由地考虑,然后就同样的基本工作提出其他具体问题。

最后的想法是,如果两个电子表格中的职位编号相同,您实际上可以简单地将两者按相同顺序排序,然后复制并粘贴到新电子表格中。完成。您甚至可以使用一个技巧来恢复排序前其中一个的顺序(当然不是两个!)(新问题)。

魔鬼确实存在于细节中。

顺便说一句,为了让图片更有用,要么完全没有标题,要么完全显示。只显示一半会让人们误以为它们很重要,是乐于助人的灵魂,浪费时间试图看清它们。实际上,它们在这里并不重要,从图片的角度来看,没有什么是重要的,因为您的文本描述完全足以让您看到您想要的内容(好吧……如果我上面描述的不是您想要的,那么这是一个糟糕的描述,因为它是如此明显!),不需要图片。但是,再说一次,乐于助人的灵魂意识到他们浪费了时间试图找出糟糕的细节,却发现它们根本不重要,那么他们可能是人类……在一段时间内感觉不太有帮助。如果这些标题是可读的,并且他们在几秒钟内意识到图片中没有任何重要的东西,那可能就不会发生这种情况了。这是我的(试图提供帮助)/(说教)——您选择其中哪一个——今天。

相关内容