Excel:删除一列中的重复项,同时在相邻列中保留最高值

我有一个Excel电子表格有两列。 第一列是标签,第二列是数字值。 我想删除列“A”中的所有重复标签,并保留在列“B”的最大数值。 我试图在下面说明(filter会导致“合并表”给出“原始表”:

注1:我试图parsing邮件服务器日志文件,以获取主机及其在特定date的最大SMTP连接的列表。 如果你可以build议在Windows上这样做(即使它意味着使用草莓Perl),我会很感激解决scheme。

注2:你可能不得不使用你的想象力,下面我画了“电子表格”,我试着把每一行放在一行中,但是所有的行都在一行中渲染。 [编辑]通过将所有内容放在无序列表中修复它。

“原稿”

  • colA,colB
  • name1,32.0,
  • name1,12.5,
  • name1,11.0,
  • name1,10.1,
  • name1,6.9,
  • 名称2,2.3,
  • name2,1.1,
  • name2,0.9,
  • name3,54,
  • 名称3,60,
  • name3,101,
  • name3,12,

“合并表”

  • colA,colB
  • name1,32.0,
  • 名称2,2.3,
  • name3,101,

问候,emk

你不能只使用Excel的数据透视表function吗?

您可以使用高级filter选中“仅限唯一logging”checkbox,并将唯一值复制到新位置。

一旦你有了唯一的值,你可以使用数组函数来查找最大值。

假设您的原始数据位于a2:a13,您的唯一值位于d2:d4(忽略列标题)。 你在e2中的公式是= SUMPRODUCT(MAX(($ A2:$ A13 = D2)*($ B2:$ B13)))

必须使用Ctrl + Shift + Enterinput数组函数,而不仅仅是input。

然而,正如JDunkerley所说,数据透视表将是您最简单,最快速的方法。