如果名称与另一个列表匹配,则从多列中提取数据

如果名称与另一个列表匹配,则从多列中提取数据

因此,我尝试制作一个公式,查看我在单独的工作表中提供的服务器名称,并查看该名称是否在另一张工作表的某一列中,然后将我告诉它的特定列提取到另一张工作表中。

例如,我将提供我想要从完整报告中提取的所有服务器名称

Names that need to be pulled
Server1
Server3
Server4

它在名称列中查找需要提取的名称,并提取我指定的所有列,以便将其提取到另一张表上

Type    Name    Lead    Start Date  End Date    Confirmation
AIX    server1  Bob     23/02/2019  24/02/2019  Success
Java   server2  steve   24/02/2019  25/02/2019  Success
java   server3  steve   25/02/2019  26/02/2019  Not Booked
AIX    server4  bob     26/02/2019  27/02/2019  Booked

这样就只将服务器 1、3 和 4 的行提取到另一张表,并且只将特定的列拉到另一张表上。

Type    Name    Lead    Start Date  End Date
AIX    server1  Bob     23/02/2019  24/02/2019
java   server3  steve   25/02/2019  26/02/2019
AIX    server4  bob     26/02/2019  27/02/2019

这可能吗?解决这个问题的最佳方法是什么?

如果发布此帖的地方不合适,敬请原谅,我们将不胜感激任何帮助。

答案1

将这两个 CSE 公式粘贴到显示结果的工作表上。

动态列标题:

  • =IFERROR( INDEX($B$1:$I$1,SMALL( IF($B$1:$I$1<>"", IF( COUNTIF($U$5:$U$10, $B$1:$I$1), COLUMN($B$1:$I$1)-COLUMN($B$1)+1)), COLUMN(A$1))),"")
  • 将公式放在结果区域的左上角。
  • 编辑以下值:
    • $B$1:$I$1是原始数据表上标题行的范围。
      此范围可以从可能显示的第一个列标题到可能显示的最后一个列标题,并且可能包括其间永远不会被选择显示的列标题。如果未选择显示某个标题,则该标题不会出现在结果的标题中。
    • $U$5:$U$10是包含要在结果中显示的列标题名称的单元格范围。
      此范围可以是垂直的也可以是水平的。必须足够大以容纳可能选择包含在结果中的最大标题标签。结果列标题中仅显示范围的非空白单元格。
    • $B$1是原始数据中的第一个单元格,即标题范围。
    • A$1是自动递增值。请勿编辑此值。
      当公式被复制并拖动时,列字母将自动增加。
    • 除自动增量列字母外,所有范围和单元格引用都是绝对的。
    • 如果引用不是结果表的本地引用,则使用引用范围的工作表名称(选项卡)来限定它(RawDataSheet!$B$1:$I$1)。
  • 编辑后,使用Ctrl- Shift-Enter使其成为数组公式。
  • 复制并向右拖动,直到最大结果列标签可以通过公式展开。

结果数据:

  • =IFERROR( INDEX($B$2:$I$100,SMALL( IF( $D$2:$D$100<>"", IF( COUNTIF($V$6:$V$8, $D$2:$D$100), ROW($D$2:$D$100)-ROW($D$2)+1)), ROW($A1)),MATCH(AA$16,$B$1:$I$1,0)),"")
  • 将公式放在第一个粘贴公式下方的单元格中。
  • 编辑以下值:
    • $B$2:$I$100是不包括标题行的最大原始数据的范围。
    • $D$2:$D$100是原始数据中服务器名称列的范围。
      此范围中不包括标题行。它应包含最大原始数据范围中使用的相同行号。
    • $V$6:$V$8是包含要包含在结果中的服务器名称的单元格范围。
      此范围可以是垂直的,也可以是水平的。必须足够大,以容纳可能选择包含在结果中的最大服务器名称。显示结果时仅考虑此范围内的非空白单元格。
    • $D$2是原始数据范围内的第一个单元格(左上角)。
    • $A1是自动递增值。请勿编辑此值。
      公式复制拖拽时行号会自动增加。
    • 除自动增量行号外,所有范围和单元格引用都是绝对的。
    • 如果引用不是结果表的本地引用,则使用引用范围的工作表名称(选项卡)来限定它(ReusltsSelectionTab!$V$6:$V$8)。
  • 编辑后,使用Ctrl- Shift-Enter使其成为数组公式。
  • 复制并向右拖动,拖动的量与上述公式的拖动量相同。
  • 有了这些新鲜复制拖拽单元格仍处于选中状态(或重新选择所有单元格),复制并向下拖动整个选择,直到容纳最大结果行。

相关内容