Crear categoría y descripción para funciones personalizadas UDF en Excel

Compatibilidad: Truco compatible con Excel 365Truco compatible con Excel 2016Truco compatible con Excel 2013Truco compatible con Excel 2010Truco compatible con Excel 2007

Mediante el método Application.MacroOptions en VBA podemos crear categoría y descripción para funciones personalizadas UDF en Excel.

Excel nos permite crear nuestras propias funciones (definidas por el usuario – UDF ‘User Defined Functions’) para realizar el cálculo deseado y emplearlas en los libros.

 

El objeto Application tiene la siguiente expresión (variable):

Crear categoría y descripción para funciones personalizadas UDF en Excel

Parámetros de la expresión:

– MACRO. Nombre de la macro o nombre de una función definida por el usuario.

– CATEGORY. Número que especifica la categoría de la función (Financiera, Fecha y Hora, Texto, etc.) También admite un texto para una categoría personalizada.

Número Ref.Categoría
1Financieras
2 Fecha y hora
3Matemáticas y trigonométricas
4Estadísticas
5Búsqueda y referencia
6Base de datos
7Texto
8Lógicas
9Información
10 Comandos
11Personalización
12Control de macros
13DDE/Externas
14Definidas por el usuario

– DESCRIPTION. Descripción de la función.

  • CREAR FUNCIÓN / MACRO

Insertamos la macro para la función deseada. En nuestro caso una función para calcular la edad.

  1. Con Excel abierto.

  2. Pulsar la tecla Alt y mantener pulsada / Pulsar la tecla F11. Mostrará el editor de Visual Basic.

  3. Ir a: Barra de Menú / Insertar / Módulo. Mostrará la ventana del módulo donde escribimos la macro.

    Ventana Proyecto - VBAProject con el módulo1 insertado
  4. Escribir el código de la macro:

    Public Function CalculaEdad(Fecha_de_nacim As Date)

    CalculaEdad = DateDiff("yyyy", Fecha_de_nacim, Date)

    End Function

    La función CalculaEdad resumida, permite mostrar el número de años
    transcurridos de una fecha.

  • CATEGORÍA Y DESCRIPCIÓN DE LA FUNCIÓN

  1. Ir a: Explorador de Proyectos / VBAProject / Doble Clic sobre ThisWorkbook (libro). Si el panel no está visible Ir a: Barra de menú / Ver / Explorador de proyectos. Mostrará la ventana donde escribimos la macro.

    Panel de proyecto con el objeto ThisWorkbook seleccionado
  2. Escribir el código de la macro:

    Private Sub Workbook_Open()

    Application.MacroOptions Macro:="CalculaEdad", Category:=2, Description:="Calcula la edad desde la fecha de nacimiento en años."

    End Sub

    Código para insertar la categoría y la descripción a la función.

  3.  

  4. Guardar el libro con la extensión *.xlsm. Libro habilitado para macros.

  5. Cerrar el documento y volver a abrirlo. Importante para que los cambios se almacenen en Excel.

  • INSERTAR FUNCIÓN

  1. Ir a: Cinta de opciones / Pestaña: Formulas / Grupo: Biblioteca de funciones / Categoría: Fecha y hora / CalculaEdad. En la categoría y con la descripción de la función.

    Función UDF (CalculaEdad) mostrada en la cinta de opciones/Fórmulas/Fecha y hora
  2. O también, Ir a: Barra de fórmulas / Botón insertar función. En la categoría y con la descripción de la función.

    Ventana Insertar función mostrando la función (CalculaEdad) en categoría Fecha y hora
  3. Mostrará la ventana de argumentos de función. Con la descripción de la función.

    Ventana argumentos de función mostrando su descripción.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *