寻找最小的偶数值(Microsoft Excel)
Emin的单元格范围可以是文本或数字。
他需要一种方法来确定范围内的最小偶数。 Emin想知道这是否可以通过公式来完成,或者他是否需要用户定义的函数。
有两种方法可以解决此问题。您可以尝试的一种方法是使用DMIN函数。您需要做的就是确保数据列上有一个标题(例如“ MyData”),然后在一些偏僻的地方创建一个小的条件字段。例如,您可能想通过将标题(例如“ Min Even”)放在单元格F1中并将公式= ISEVEN(MyData)放在单元格F2中来创建条件字段。单元格F2的计算结果为#VALUE!错误,但在这种情况下可以。然后,您可以在其他单元格中使用以下公式:
=DMIN(A1:A100, 1, F1:F2)
如果愿意,可以使用数组公式计算出最低的偶数值。由于您的数据范围可以包含文本和数字,因此,并非所有的数组公式都适用。例如,如果数据范围中除数字外,以下内容将产生错误:
=MIN(IF(MOD(A1:A100,2)=0,A1:A100))
为了确保没有错误,您需要在公式中进行一些检查:
=MIN(IF(ISNUMBER(A1:A100),IF(NOT(MOD(A1:A100,2)=0),"",A1:A100)))
同样,请记住,这是一个数组公式,因此您需要使用Shift + Ctrl + Enter进行输入。
如果愿意,可以创建一个用户定义的函数,该函数将返回所需的值:
Function MinEven(rng As Range) Dim rCell As Range Dim bNotFound As Boolean Application.Volatile MinEven = 9.99 * 10 ^ 307 bNotFound = True For Each rCell In rng If Application.WorksheetFunction.IsNumber(rCell) Then If rCell Mod 2 = 0 Then If rCell < MinEven Then MinEven = rCell bNotFound = False End If End If End If Next If bNotFound Then MinEven = CVErr(xlErrNum) End Function
要使用此宏,只需将以下内容与工作表的单元格一起使用:
=MinEven(A1:A100)
如果范围内没有偶数,则该函数将返回#Num错误。
注意:
如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。
_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。
本技巧(119)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本: