Función MINIF (UDF)

Hace algunos años desarrollamos una función definida por el usuario que Excel no incluye entre su catálogo de funciones. Era la función MAXIF, que buscaba el máximo entre un rango considerando únicamente los valores que cumplen unas condiciones. Vamos a desarrollar su función gemela, MINIF.

La función MINIF

Como en el caso de la función gemela, el funcionamiento es similar al de CONTAR.SI o SUMAR.SI. Pongamos el siguiente ejemplo:

Ejemplo para utilizar la función MINIF
Ejemplo para utilizar la función MINIF

Sintaxis

=MINIF(columna de valores ; columna del criterio ; criterio)
=MINIF(Uds;Editorial;"Editorial 1")

Función

Function MINIF(RngMinimos As Range, RngCriterios As Range, Criterio As Variant) As Double
Dim C As Range
Dim Min As Double
Dim check As Boolean

check = False
counter = 1
For Each C In RngMinimos
   If RngCriterios(counter) = Criterio Then
       If check = False Then
           Min = C.Value
           check = True
       Else
           If C.Value < Min Then Min = C.Value
       End If
   End If
counter = counter + 1
Next

If check = False Then
    MINIF = CVErr(xlErrN)
Else
    MINIF = Min
End If

End Function

Esta función contiene una mejora con respecto a la función MAXIF. En caso de no encontrarse ningún valor que cumpla los criterios, devuelve un error #N/A. Esto es porque devolver un valor 0 (cero) podría interpretarse equivocadamente como que el mínimo es ese. Pero si se quisiera ese comportamiento, solo hay que sustituir CVErr(xlERRN) por 0.

Añadir a mi libro

Como todas las UDF, si la quieres añadir a tu libro únicamente debes seguir los siguientes pasos:

  1. Abrir el desarrollador de Visual Basic (Alt + F11)
  2. Crear un módulo
  3. Añadir el código de más arriba (Copiar y Pegar)
  4. Listo para usarse

Si lo que quieres es que esté siempre presente en tu Excel, abras el libro que abras, entonces hay que hacer una cosa antes. Pincha en “Grabar macro”. Esto se puede hacer en la pestaña “Desarrollador” o en la barra de estado de Excel:

Botón "grabar macro" en la pestaña "Desarrollador"
Botón “grabar macro” en la pestaña “Desarrollador”
Botón "grabar macro" en la barra de estado.
Botón “grabar macro” en la barra de estado.

En ese momento aparecerá un diálogo, en el que tenemos que seleccionar la opción “Libro de macros personal”. Este libro lo crea siempre Excel por defecto, pero en condiciones normales está oculto. Al hacer esto y darle a aceptar y luego parar la grabación, se hará visible.

Seleccionar el libro de macros personal
Seleccionar el libro de macros personal
Ahora el libro de macros personal está visible.
Ahora el libro de macros personal está visible.

Copia el código de más arriba dentro de un módulo del libro Personal.xlsb y ya te funcionará en este ordenador para todos los archivos de Excel que abras.

Limitaciones

Recuerda que, al ser una UDF, solo estará disponible en los ordenadores donde esta macro esté guardada. Si le vas a mandar el archivo a tu jefe, recuerda copiar la macro al propio archivo, o si no tu jefe verá un error #NOMBRE en vez del resultado de la función.

La ayuda de la función no estará disponible si no se define. En otra ocasión hablaremos largo sobre este tema, al que Microsoft no le ha dado una solución sencilla aún.

Empecé a trabajar con Excel hace más de 15 años. Mi primer jefe decía que "Excel es el mejor invento de la sociedad, solo superado por la rueda". En poco tiempo adquirí un uso avanzado, pero el "pasito más allá" lo obtuve optimizando con Excel un juego de internet, o imprimiendo la quiniela que jugábamos en el trabajo.

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información ACEPTAR

Aviso de cookies
Shares
Share This