Vba 从Excel中的多个列中获取前5个事件

Vba 从Excel中的多个列中获取前5个事件,vba,excel,Vba,Excel,我的文件有四组列,我想从中找出前5列。其中有四列有名称,四列有总金额。我假设我遇到的问题是匹配公式获取了行号,但是每行最多可以有四美元和名称。因此,当我尝试时,会产生一个N/A错误。我尝试的公式是: =INDEX(Franchise,MATCH(I37,Totals,0)) 特许经营权为四列名称,总计为四列总计 在这一点上,我被难住了 我将如何着手创建该公式 你可以看到我希望公式和结果张贴在顶部的位置 以下是。您需要获得前5名总数,并使用这些总数检索Qx或其他标签。不喜欢不连续的单元格范围

我的文件有四组列,我想从中找出前5列。其中有四列有名称,四列有总金额。我假设我遇到的问题是匹配公式获取了行号,但是每行最多可以有四美元和名称。因此,当我尝试时,会产生一个N/A错误。我尝试的公式是:

=INDEX(Franchise,MATCH(I37,Totals,0))  
特许经营权为四列名称,总计为四列总计

在这一点上,我被难住了

我将如何着手创建该公式

你可以看到我希望公式和结果张贴在顶部的位置


以下是。

您需要获得前5名总数,并使用这些总数检索Qx或其他标签。不喜欢不连续的单元格范围,但较新的单元格具有较大的子功能14,您可以使用选项6强制它忽略错误。将不在D、H、L或P列中的任何内容强制转换为DIV/0!错误将从任何计算中丢弃它们

在M2中,使用以下标准公式:

=AGGREGATE(14, 6, $D$10:$P$35/NOT(MOD(COLUMN($D:$P), 4)), ROW(1:1))
在K2中,使用此标准公式检索Qx标签:

填充K2:M2至K6:M6。您的结果应该类似于以下内容

警告-如果前5个金额中存在联系,则必须设计一个更复杂的公式,以解释具有相同总数的多个事件


⑨Excel 2010中引入了。这在早期版本中不可用。

问题:前两名是阿方索6美元,520152美元,还是比尔5美元,251642美元?这真是太棒了!我不认为我自己能解决这个问题。我确实需要了解更多。而且,我也不担心重复。我可以用一美元兑换一个金额。这是一个很好的技巧。我在那里学到了一些关于不连续范围和使用NOT除法的知识。。。
=IFERROR(INDEX($C$10:$C$35, MATCH(M2, $D$10:$D$35, 0)),
 IFERROR(INDEX($G$10:$G$35, MATCH(M2, $H$10:$H$35, 0)),
 IFERROR(INDEX($K$10:$K$35, MATCH(M2, $L$10:$L$35, 0)),
         INDEX($O$10:$O$35, MATCH(M2, $P$10:$P$35, 0)))))