excel怎么限定计算结果的最大值(从Excel单元格的一大堆文字和数字中)

事情就是这么个事情,居家隔离,坚持打胜抗疫这场硬仗。

公司员工或多或少都隔离并居家办公过,每个月会有一个当月员工隔离数统计表,需要计算出最长的隔离天数。

这有何难?但是看到源数据,我方了。

案例:

下图 1 的 A 列是当月每个员工隔离的总天数,请计算出隔离时间最长的天数。

效果如下图 2 所示。

excel怎么限定计算结果的最大值(从Excel单元格的一大堆文字和数字中)(1)

excel怎么限定计算结果的最大值(从Excel单元格的一大堆文字和数字中)(2)

解决方案:

1. 在 C2 单元格中输入以下公式 --> 按 Ctrl Enter:

=MAX((SUBSTITUTE(A2,ROW(1:31),"")<>A2)*ROW(1:31))

这个公式,如果对 substitute 函数不熟,或者对数值没有一个特别强的领悟力的话,可能是有点难。所以我会仔细讲解一下。

公式释义:

  • substitute 函数的作用是在某一文本字符串中替换指定的文本;本案例中的数字跟文本混合在一起,已经是个文本格式的数字了;
  • 语法为 SUBSTITUTE(要替换其中字符的文本, 需要替换的旧文本, 用于替换的新文本, [要替换第几个旧文本]);
  • SUBSTITUTE(A2,ROW(1:31),""):
    • 将 A2 单元格中的字符 1 到 31 全部替换为空值;
    • 为什么是 1 到 31 呢?因为每个月最多 31 天,所以当月隔离天数不可能有比 31 更大的了。
  • ...<>A2:判断替换后的结果与 A2 是否不同,只要包含数字 1 至 31 就会不同,结果为 true;最后会生成由 31 个 true 或 false 组成的数组;
  • *ROW(1:31):将上述数组与数组 1 至 31 相乘,true 的保留数值本身,false 的为 0,这样就相当于吧 A2 中的数字全提取出来了;
  • 最后用 max 对这组数值求最大值

excel怎么限定计算结果的最大值(从Excel单元格的一大堆文字和数字中)(3)

excel怎么限定计算结果的最大值(从Excel单元格的一大堆文字和数字中)(4)

很多同学会觉得 Excel 单个案例讲解有些碎片化,初学者未必能完全理解和掌握。不少同学都希望有一套完整的图文教学,从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解 Excel 的各个知识点。

现在终于有了,以下专栏,从最基础的操作和概念讲起,用生动、有趣的案例带大家逐一掌握 Excel 的操作技巧、快捷键大全、函数公式、数据透视表、图表、打印技巧等……学完全本,你也能成为 Excel 高手。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页