将MINIF / MAXIF与包含数字的字符串一起使用吗?

问题描述 投票:0回答:1

我想在给定条件下找到最小数字(是作者并且正在试用),如果D包含数字,则下面的代码有效,但是如果数字是字符串的一部分,例如例如分数?就像如果D中的数字看起来像“ 1/8”,“ 31/688”,“ 21/33”等,该如何使用此公式?

=MINIFS(D3:D1007, A3:A1007, "Writer", C3:C1007, "Probation")

我已经有另一个公式可以计算给定分数的十进制值,如果该分数位于单元格D21中,则它看起来像这样:

=left(D21,find("/",D21)-1)/(right(D21,len(D21)-find("/",D21)))

但是如何在minif / maxif中应用这种公式?

I have attached a picture to show what I mean,我想做的是将一个公式放入程序包stats(probation)的通过/总计列中,它将从具有该包名称的程序中获得最低的通过/总计值,重要程度。如您所见,整个writer程序包的通过率为5/8,因为在writer程序包5/8中,最低的通过率是具有package = writers和重要性=试用期的人中最低的通过率。但是目前我必须手动输入5/8,我希望它能够使用我在上面试图得出的公式自动获得它。

<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS9UNkpDci5wbmcifQ=” =“

我想找到在给定条件下的最小数字(是作者并且正在试用),如果D包含数字,则下面的代码有效,但是如果数字是字符串的一部分(如。),该怎么办? 。

regex google-sheets google-sheets-formula array-formulas fractions
1个回答
0
投票

尝试:


0
投票

尝试:

=ARRAYFORMULA(MIN(IF((A3:A="writer")*(C3:C="probation"), 
 IFERROR(REGEXEXTRACT(D3:D, "\d+")/REGEXEXTRACT(D3:D, "/(\d+)"), D3:D), )))

0

或返回分数:

=ARRAYFORMULA(VLOOKUP(MIN(IF((A3:A="writer")*(C3:C="probation"), 
 IFERROR(REGEXEXTRACT(D3:D, "\d+")/REGEXEXTRACT(D3:D, "/(\d+)"), D3:D), )), 
 {IF((A3:A="writer")*(C3:C="probation"), 
 IFERROR(REGEXEXTRACT(D3:D, "\d+")/REGEXEXTRACT(D3:D, "/(\d+)"), D3:D), ), D3:D}, 2, 0))

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.