从多个选项中返回最高值

我得到了一个如下所示的数据表:

在这里输入图像说明

基于这些数据,我想制作一张如下所示的表格:

在这里输入图像说明

那么我做了什么来得到第二张照片呢?

  • 在第一张图片的数据中,我search了所有具有相同前6个数字的6位数的数字。 这给了我们2个结果,存在3次的445566和存在2次的112233。
  • 从那里我想find每个结果的最高百分比,那么445566%的最高百分比是多less,即10%。
  • 在为每个商店做这个之后,每个商店的每个商店的最高%都会得到一个6位数的结果。

你可以想象,手工操作非常耗时。 我想知道有没有人知道如何加快速度。 我以为试图使用Vlookup / VBA,但是我不太了解这些主题来解决这个问题(Vlookup的基础知识和几乎不存在的VBA知识)。 我想知道你们中的任何一方是否可以让我朝着正确的方向发展,或者有什么想法可以使这个过程变得更加简单。

提前致谢

编辑:数据图片1的链接: https : //drive.google.com/open?id = 0By2vDlsDCzUoZ1BocV9qVjQ4bzg

您可以使用:

=MAX(IF(ISNUMBER(FIND($A8,$A$2:$A$6)),B$2:B$6,0%)) 

数组公式按Ctrl + Shift + Enter而不是Enter
并拖放到同一行
首先创build以A8开始的6位数的列
A2:A8号码栏
B2:B6%店铺
将其更改为对应于第一个表中的数据
保留固定引用的$,以便改变正确的方式

将下面的公式放入cel H2中。 使用Ctrl + Shift + Enter并复制下来。

 =IFERROR(INDEX(LEFT($A$2:$A$100,6), MATCH(0,COUNTIF($H$1:H1, LEFT($A$2:$A$100,6)), 0)),"") 

这将给你独特的6位数字。

然后把下一个公式放在单元格I2中再次使用Ctrl + Shift + Enter 。 向下复制到右侧。

 =MAX(IF(LEFT($A$2:$A$100,6)=$H2,B$2:B$100)) 

第二个公式将提供每个商店每个唯一编号的最大百分比。

在每个提供的图像的H2:J2中,

 'as an array formula with CSE in H2 =--LEFT(INDEX(A$2:INDEX(A:A, MATCH(1E+99, A:A)), MATCH(0, COUNTIF(H$1:H1, LEFT(A$2:INDEX(A:A, MATCH(1E+99, A:A)), 6)&""), 0)), 6) 'as a standard formula in I2 =MAX(INDEX((B$2:INDEX(F:F, MATCH(1E+99, F:F)))-(--LEFT(A$2:INDEX(A:A, MATCH(1E+99, F:F)), 6)<>H2)*1E+99, , )) 'as a standard formula in J2 =INDEX(A$1:F$1, AGGREGATE(15, 6, COLUMN(A:F)/((--LEFT(A$2:INDEX(A:A, MATCH(1E+99, F:F)), 6)=H2)*COUNTIF(I2, A$2:INDEX(F:F, MATCH(1E+99, F:F)))), 1)) 

根据需要填写。 添加IFERROR包装,以避免错误代码,当你用完匹配的东西。

在这里输入图像说明