如何在 Excel 中排列两组数据?

如何在 Excel 中排列两组数据?

如果我有两组数据,如何在 Excel 2007 中排列它们?

例如,如果一组数据

Position    Occurrences
      8               3
     11               1
     17               2
     18               1

另一组数据

Position    Occurrences
      8               1
     18               6

我该如何排列它,以便

Position    Occurrences     Position    Occurrences
      8               3            8              1
     11               1         
     17               2         
     18               1           18              6

而不是

Position    Occurrences     Position    Occurrences
      8               3            8              1
     11               1           18              6
     17               2         
     18               1         

答案1

OpenOffice 版本,应该很容易适应 Excel(我认为唯一的区别是 OO 使用分号来分隔函数参数,而 Excel 使用逗号):

给定两个标记为“数据集 1”(显示在下面的单元格 A3:B6 中)和“数据集 2”(显示在下面的单元格 D3:E6 中)的数据块:

  1. 将数据集 1 复制到新范围(如下图单元格 A10:B13 所示)。
  2. 在数据集 1(显示在单元格 D10 中)的右侧,输入以下公式:

    =IF(ISNA(VLOOKUP($A10;$D$3:$E$6;1;0));"";VLOOKUP($A10;$D$3:$E$6;1;0))
    
  3. 在此单元格旁边(显示在单元格 E10 中),输入以下公式:

    =IF(ISNA(VLOOKUP($A10;$D$3:$E$6;2;0));"";VLOOKUP($A10;$D$3:$E$6;2;0))
    
  4. 复制单元格 D10:E10 并粘贴到单元格 D11:E13。

其背后的想法是使用 来VLOOKUP查找与 A 列中的值匹配的单元格。如果匹配的单元格是未找到(即VLOOKUP函数返回 N/A 值),将一个空字符串放入单元格内容中。如果匹配的单元格是成立,将VLOOKUP结果放入单元格内容中。

在此处输入图片描述

答案2

根据 Mike Renfro 的回答,这是我在 Excel 下的操作方法:

给定两个标记为“数据集 1”(显示在下面的单元格 A3:B6 中)和“数据集 2”(显示在下面的单元格 D3:E6 中)的数据块:

  1. 将数据集 1 复制到新范围(如下图单元格 A10:B13 所示)。
  2. 在数据集 1(显示在单元格 D10 中)的右侧,输入以下公式:

    =IFERROR(VLOOKUP($A10,$D$3:$E$6,COLUMN()-COLUMN($D10)+1,0),"")
    
  3. 将此公式复制并粘贴到 D10:E13

与 Mike 的回答的区别:

  1. 我没有手动输入列号,而是使用了公式COLUMN
  2. 我没有做VLOOKUP两次,而是做了一次,然后IFERROR如果找不到任何东西就用它。
  3. 正如 Mike 所说,我使用逗号而不是分号。

答案3

我阅读了上面的评论,基本上必须按照原始问题所说的那样进行布局,然后尝试了两个答案。第一个答案对我不起作用;我一定是做错了什么,或者不够聪明。然后尝试了第二个答案,并且相信我必须修改单元格以匹配我想要的。我有 2,566 个单元格必须在两个不同的列中匹配。所以这是我用于前三行的公式,然后复制/粘贴并向下拖动以粘贴所有 2,566 个单元格以进行匹配:

=IFERROR(VLOOKUP($D2,E2:E2566,COLUMN()-COLUMN($F2)+1,0),"")

=IFERROR(VLOOKUP($D3,E3:E2566,COLUMN()-COLUMN($F3)+1,0),"")

=IFERROR(VLOOKUP($D4,E4:E2566,COLUMN()-COLUMN($F4)+1,0),"")

当您将该公式粘贴到单元格中,然后慢慢单击括号内的每个部分时,它会显示哪些单元格被突出显示。通过这样做,我能够看到它正在查看哪些单元格,这对我来说更有意义。所以我只需突出显示整个列,或选择适当的单元格,它就可以了。然后我要做的就是将公式复制/粘贴到下一行和下一行,然后将其一直粘贴到我的文档中,它就会自动转换为正确的单元格。

希望这可以帮助。

答案4

我真的不确定如何给出比使用 Vlookup 更好的答案。

相关内容