Encontrar el valor par más pequeño (Microsoft Excel)
Emin tiene un rango de celdas en las que puede haber texto o números.
Necesita una forma de determinar el número par más pequeño del rango. Emin se pregunta si esto se puede hacer con una fórmula o si necesita una función definida por el usuario.
Hay un par de formas de abordar este problema. Un método que puede probar es utilizar la función DMIN. Todo lo que necesita es asegurarse de tener un encabezado en su columna de datos (como «MyData») y luego crear un pequeño campo de criterios en algún lugar apartado. Por ejemplo, es posible que desee crear el campo de criterios colocando un encabezado (como «Mínimo par») en la celda F1 y colocar la fórmula = ISEVEN (MyData) en la celda F2. La celda F2 se evalúa como # ¡VALOR! error, pero eso está bien en este caso. Luego puede usar la siguiente fórmula en una celda diferente:
=DMIN(A1:A100, 1, F1:F2)
Si lo prefiere, puede usar una fórmula de matriz para calcular el valor par más bajo. Debido a que su rango de datos puede contener tanto texto como números, no todas las fórmulas de matriz funcionarán. Por ejemplo, lo siguiente generará un error si hay algo más que números en el rango de datos:
=MIN(IF(MOD(A1:A100,2)=0,A1:A100))
Para asegurarse de no obtener los errores, debe verificar la fórmula:
=MIN(IF(ISNUMBER(A1:A100),IF(NOT(MOD(A1:A100,2)=0),"",A1:A100)))
Nuevamente, recuerde que esta es una fórmula de matriz, por lo que debe ingresarla usando Shift + Ctrl + Enter.
Si lo prefiere, puede crear una función definida por el usuario que devolverá el valor deseado:
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
Para usar esta macro, simplemente use lo siguiente con una celda de su hoja de trabajo:
=MinEven(A1:A100)
Si no hay números pares en el rango, la función devolverá un error #Num.
_Nota: _
Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.
link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador]
.
ExcelTips es su fuente de formación rentable en Microsoft Excel.
Este consejo (119) se aplica a Microsoft Excel 97, 2000, 2002 y 2003. Puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y posteriores) aquí:
link: / excelribbon-Finding_the_Smallest_Even_Value [Encontrar el valor par más pequeño]
.