首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Excel的VBA中提取重复出现数组的最大值

在Excel的VBA中提取重复出现数组的最大值
EN

Stack Overflow用户
提问于 2018-01-10 03:55:36
回答 2查看 602关注 0票数 2

我有一个表,其中有重复的索引,如图所示:

我想要得到每个索引的时间1/时间2的最高值("Apple","Banana",...)

我的代码如下:

代码语言:javascript
运行
复制
dim i as integer, j as integer
For i=2 to 4
      j=2
      While Cells(i,6)=Cells(j,2)
          if Cells(j,3) > Cells(i,7) then
              Cells(i,7) = Cells(j,3)
          end if 
          if Cells(j,4) > Cells(i,8) then
              Cells(i,8) = Cells(j,4)
          end if
       Wend
Next i

因此,我们的想法是遍历唯一的名称,然后遍历名称的每个匹配项,并检查它是否大于当前存储的时间。

我知道有一些语法错误,因为每当我运行代码时,它都不会改变我的工作表,我真的找不到关于如何在VBA中替换值的文档。

所以我想知道有没有一种更简单的方法来做到这一点,和/或寻求帮助,以获得适当的语法。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-01-10 04:13:53

这完全可以在没有VBA的情况下完成。使用示例数据,在单元格J1中,我使用此公式来获取B列中唯一名称的数量:

代码语言:javascript
运行
复制
=SUMPRODUCT((B2:B10<>"")/COUNTIF(B2:B10,B2:B10&""))

在单元格F2中并向下复制到F6的公式是提取这些唯一名称的公式:

代码语言:javascript
运行
复制
=IF(ROW(F1)>$J$1,"",INDEX($B$2:$B$10,MATCH(0,INDEX(COUNTIF(F$1:F1,$B$2:$B$10),),0)))

在单元格G2中并复制到H6中的是此公式,用于提取每个唯一名称的最大时间值:

代码语言:javascript
运行
复制
=IF($F2="","",MAX(INDEX(($B$2:$B$10=$F2)*C$2:C$10,)))

右侧填充的表(列F、G和H)是结果:

或者,这可以使用数据透视表轻松完成。选择B、C和D列中的原始数据,然后转到“插入->透视表”。我选择将其放在同一个工作表中,但如果您愿意,也可以将其放在新的工作表中。然后,它会弹出请求您的透视表字段,设置如下所示(请注意,您需要将值从计数更改为最大值):

然后,您将拥有一个显示相同结果的数据透视表:

票数 1
EN

Stack Overflow用户

发布于 2018-01-10 04:19:08

1.-你声明了"j=2“,但没有改变它,我想你必须从2行到10行”导航门“,不是吗?

2.-当你输入"while“语句时,你永远不会改变条件,所以...它将永远重复

我不确定你必须获得什么,所以请公开它的样本

+++++您必须从表中删除"-“值

代码语言:javascript
运行
复制
dim i as integer, j as integer
For i=2 to 4
    For j=2 to 10
        if Cells(i,6)=Cells(j,2) then
            if Cells(j,3) > Cells(i,7) then
                Cells(i,7) = Cells(j,3)
            end if 
            if Cells(j,4) > Cells(i,8) then
                Cells(i,8) = Cells(j,4)
            end if
        end if
    Next j
Next i

+++++您必须从表中删除"-“值

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48175755

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档