Excel:从列2中检索具有相同列1值的所有值

我有一个MS Excel表格。 我想要检索具有相同第一列值的不同列中的所有对应值的列表。 例如,从一个州的每月天气数据表中,我需要具有相同位置的所有天的所有mintemp和maxtemp。

location date mintemp maxtemp A 7/1/14 61 84 A 7/2/14 65 89 A 7/3/14 70 75 B 7/1/14 32 40 B 7/2/14 29 42 

说我只想要A的数据。 VLOOKUP函数将从此表中只提取一个A值。 我可以在VLOOKUP使用位置和date的组合,但这是一个大问题。

我已经创build了一个表,如下所示,在AD列中添加您的位置,date,mintemp和maxtemp(我添加了更多的数据,以便更好地演示)

单元格F2是select单元格。 在这里你input你感兴趣的位置标识符(下面A和B的结果)

要填充单元格G2:I6( 过滤结果 ),您必须执行以下操作:

  • 定义一个称为data的范围,指向A2:D10 (让我知道你是否不知道如何)
  • 定义一个称为locations的范围,参考A2:A10
  • select单元格G2:I6,单击公式栏并键入以下内容: =OFFSET(data,MATCH(F2,locations,0)-1,1,COUNTIF(locations,F2),3)
  • 按ctrl-shift-enter接受公式(这将创build一个数组公式,并在公式周围出现大括号)

     my Example Table: ABCDEFGHI ----------------------------------------------------------------------------------------- 1 | location date mintemp maxtemp location date mintemp maxtemp 2 | A 07/01/2014 66 84 A 07/01/2014 66 84 3 | A 07/02/2014 65 89 07/02/2014 65 89 4 | A 07/03/2014 64 75 07/03/2014 64 75 5 | A 08/03/2014 63 75 08/03/2014 63 75 6 | A 09/03/2014 62 75 09/03/2014 62 75 7 | B 07/01/2014 32 40 8 | B 07/02/2014 29 42 9 | C 07/01/2014 61 84 10 | C 07/02/2014 65 89 ABCDEFGHI ----------------------------------------------------------------------------------------- 1 | location date mintemp maxtemp location date mintemp maxtemp 2 | A 07/01/2014 66 84 B 07/01/2014 32 40 3 | A 07/02/2014 65 89 07/02/2014 29 42 4 | A 07/03/2014 64 75 #N/A #N/A #N/A 5 | A 08/03/2014 63 75 #N/A #N/A #N/A 6 | A 09/03/2014 62 75 #N/A #N/A #N/A 7 | B 07/01/2014 32 40 8 | B 07/02/2014 29 42 9 | C 07/01/2014 61 84 10 | C 07/02/2014 65 89