excel中怎么实现查找一组数中最的值,并提取最大值所在列第一行数据。

如下图,B2:E2最大值是4,分别在D2E2单元格内,要提取这两个单元格所在的第一列(D1E1)的数据(累3累4),下面每一行也是如此。也就是要查找同一行4个数据中的最大... 如下图,B2:E2最大值是4,分别在D2 E2单元格内,要提取这两个单元格所在的第一列(D1 E1)的数据(累3 累4),下面每一行也是如此。
也就是要查找同一行4个数据中的最大值,然后定位到最大值所在的列,并提取该列第一行的数据。
展开
 我来答
葬花吃人
2018-06-28 · TA获得超过6363个赞
知道大有可为答主
回答量:6938
采纳率:76%
帮助的人:1351万
展开全部
你的最大值有2个相同的,不能识别啊。给你提供一个公式,此公式只能用于最大值不能有2个,最大值只能有一个唯一值:=INDEX($B$1:$E$1,MATCH(MAX(B2:E2),B2:E2,0))
夜空里的守望者
2018-07-15 · 穿越时空,互联互通。
夜空里的守望者
采纳数:8493 获赞数:31597

向TA提问 私信TA
展开全部

在函数公式不能处理的情况下,不妨试着使用VBA程序来处理,其程序代码如下:

Sub GetMax()
Dim i, j, k1, k2
Set mysheet1 = ThisWorkbook.Worksheets("Sheet1")
mysheet1.Range("A1:A1000") = ""

For i = 2 To 1000
  k1 = Application.WorksheetFunction.Max(mysheet1.Range(mysheet1.Cells(i, 2), mysheet1.Cells(i, 5)))           '获取最大值
  k2 = Application.WorksheetFunction.CountIf(mysheet1.Range(mysheet1.Cells(i, 2), mysheet1.Cells(i, 5)), "")   '统计空白单元格数量

  If k2 = 0 Then   '如果空白单元格数为零,则

   For j = 2 To 5   '从第二列到第五列
    If mysheet1.Cells(i, j) = k1 And mysheet1.Cells(i, 1) <> "" Then            '与最大值相同且单元格不为空白
     mysheet1.Cells(i, 1) = mysheet1.Cells(i, 1) & "," & mysheet1.Cells(1, j)    '把对应单元格的值填入此单元格并加逗号间隔
    End If

    If mysheet1.Cells(i, j) = k1 And mysheet1.Cells(i, 1) = "" Then
     mysheet1.Cells(i, 1) = mysheet1.Cells(1, j)
     End If

   Next
  End If

Next

End Sub

VBA程序代码截图如下:

VBA程序的运行结果如下:

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式