【问题标题】:Excel - Find Highest Value of Text String in Group/Array (Pic)Excel - 查找组/数组中文本字符串的最大值(图片)
【发布时间】:2016-01-21 11:03:15
【问题描述】:

因此,在研究并通过反复试验(主要是错误)之后,试图完成这项工作,我感到很头疼。它可能是我缺少的一些简单的东西。

我有一列显示带有字母和数字的文本字符串。该值始终为 13 个字符,最后两个为数字(即 01、02、03 等)。我希望相邻列指示哪一行包含该组中的最大值(基于最后 2 个数值)(见图)。

我找到了一个类似的示例,但无法在我的应用程序中运行 (Excel - Find Highest Value of a Column in all Matching Rows (With Screenshot))。不确定是不是因为单元格格式。

请帮忙——非常感谢!

【问题讨论】:

  • 如果A2是包含文本字符串的单元格Right(A2, 2) 将返回最后 2 位数字,但不返回数字,要将它们转换为数字,您可以嵌套 Right() 公式,如 NUMBERVALUE(RIGHT(A2,2))。您将获得最后两位数字作为数字。现在您可以在结果数字列上使用 MAX() 公式来确定最大值

标签: excel


【解决方案1】:

你可以用数组公式来做到这一点:

=IF(NUMBERVALUE(RIGHT(A2,2))=MAX(IF(LEFT($A$2:$A$10,11)=LEFT(A2,11),NUMBERVALUE(RIGHT($A$2:$A$10,2)))),TRUE)

输入公式后需要按ctrl+shift+enter。它假定 13 个字符的字符串,末尾有 2 个数字。

【讨论】:

    【解决方案2】:

    我可以逐步向您展示如何做到这一点...如果您添加以下公式,它应该可以满足您的需求。

    1. 在单元格 B2 中,输入公式=LEFT(A2,11)
    2. 在单元格 C2 中,输入 =RIGHT(A2,2)+0+0 实际上很重要,因为它将值的上下文从文本转换为数字,这将允许下一部分工作
    3. 在单元格 D2 中,您需要一个数组公式。输入=MAX(IF($B:$B=B2,$C:$C)),然后按回车键,按住 CTRL 和 SHIFT。如果您操作正确,当您在单元格上时,Excel 将在您的公式周围有 { 大括号 }(即使您在尝试编辑时看不到它们)
    4. 单元格 E2 现在只是 =C2=D2

    当你把你的公式复制下来,我相信它会得到想要的结果:

    TEXTXXXXXXX01   TEXTXXXXXXX 1   3   FALSE
    TEXTXXXXXXX02   TEXTXXXXXXX 2   3   FALSE
    TEXTXXXXXXX03   TEXTXXXXXXX 3   3   TRUE
    TEYTYYYYYYY04   TEYTYYYYYYY 4   5   FALSE
    TEYTYYYYYYY05   TEYTYYYYYYY 5   5   TRUE
    TEZTZZZZZZZ06   TEZTZZZZZZZ 6   10  FALSE
    TEZTZZZZZZZ07   TEZTZZZZZZZ 7   10  FALSE
    TEZTZZZZZZZ08   TEZTZZZZZZZ 8   10  FALSE
    TEZTZZZZZZZ09   TEZTZZZZZZZ 9   10  FALSE
    TEZTZZZZZZZ10   TEZTZZZZZZZ 10  10  TRUE
    

    【讨论】:

      猜你喜欢
      • 2016-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-21
      相关资源
      最近更新 更多