【问题标题】:Excel Vlookup Formula required from pivoted data透视数据所需的 Excel Vlookup 公式
【发布时间】:2017-07-03 14:38:49
【问题描述】:

我有一个来自数据透视表的简单数据表,格式如下:

 A                          B           C            D
 Names                      Dog         Cat          Horse
 John Smith                 1           1            0
 Jane Smith                 0           0            0
 Jane Dow                   0           1            0
 John Dow                   1           1            1

我想使用一个公式来填充另一个使用上述表格的表格。第二个表有不同的顺序。例如,马在 B 列而不是 D 列,约翰史密斯在第 5 行而不是第 1 行。

 A                          B           C            D
 Names                      Horse       Cat          Dog
 John Dow                   ?            
 Jane Smith                
 Jane Dow                   
 John Smith

考虑到这些情况,最好使用什么公式,我认为 Vlookup/hlookup 行不通,因为它依赖于水平和垂直变量。

【问题讨论】:

  • 我知道您可以更改订单。但我需要在两个表中固定顺序。
  • 我知道这个问题的简单解决方案。但是,鉴于围绕此问题的情况,我需要一个公式来填充此数据,而不更改行和列,并且没有任何复制或粘贴功能。
  • 另外第二个表不是数据透视表。

标签: excel excel-formula pivot-table


【解决方案1】:

G2单元格(VLOOKUP with MATCH)中试试这个公式

=VLOOKUP($F2,$A:$D,MATCH(TRIM(G$1),$A$1:$D$1,0),0)

【讨论】:

  • 欣赏展示了一种使用 ~VLOOKUP~ 来满足 OP 要求的方法。
【解决方案2】:

更强大的解决方案是使用 GETPIVOTDATA 函数...它完全按照您在问题中提出的要求,并且用户可以从根本上更改数据透视表的布局而不会破坏公式。

【讨论】:

    【解决方案3】:

    正如@pnuts 所提到的,这似乎是一个毫无意义的练习,因为您可以只操作数据透视表本身中的数据。

    话虽如此,但问,你会收到......

    对于此任务,您需要使用INDEX() 公式。它通过给它一个相对于起始位置的行号和列号从数据中读取什么(无论它在哪里,它都会假设第一个单元格是第 1 行第 1 列)。

    这允许我们使用其他公式来确定我们正在寻找的行号和列号。

    =INDEX($E$5:$G$8,               'The area our results are that we are looking through
           MATCH($I4,$D$5:$D$8,0),  'Match the name to the name column, return a number of it's position counting from 1 as the first cell
           MATCH(J$3,$E$4:$G$4,0))  'Same as above but matching the animal name
    

    现在看示例,在网格 E5:G8 中,我们正在寻找由 INDEX() 返回的第 4 行第 3 列。

    这是因为 John Dow 是第一个 MATCH() 中找到的第四个名字,而 Horse 是第二个 MATCH() 中找到的第三个动物名字。

    这将分别返回结果中右下角的单元格。

    =INDEX($E$5:$G$8,MATCH($I4,$D$5:$D$8,0),MATCH(J$3,$E$4:$G$4,0))

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多