Como escribir la descripción genérica de una función definida por el usuario mediante código VBA

En una nota anterior explicábamos como documentar una función definida por el usuario sin necesidad de utilizar código. En esta nota veremos como documentar dicha función mediante código. El código de la función creada ha de estar en un módulo del editor VBA. Para ello,
  • Pulsamos ALT+F11 para abrir el editor
  • Seleccionamos el menú Insertar Modulo

En este Módulo deberíamos haber creado nuestra función ya que se trata de un Procedimiento


Lo siguiente que haremos será establecer las opciones de macro desde la cual haremos referencia a la función que hemos creado. Esta macro ha de situarse en el libro en el que la vamos a utilizar bajo el evento Open.

  • Hacemos doble clic en ThisWorkbook

  • Seleccionamos Workbook en el editor VBA

Automáticamente se aplicará el evento Open



Escribimos el siguiente código VBA:


Application.MacroOptions Macro:="SumaRaizCuadrada", Description:="Suma la raíz cuadrada de los valores introducidos"



Mediante este código hacemos referencia a las opciones de macro, luego indicamos el nombre de la función a la que queremos hacer referencia y a continuación la Descripción.

Si volvemos a la hoja de Excel e insertamos la función observaremos que aparece en blanco


Esto se debe a que como la hemos establecido bajo el evento Open, hemos de cerrar el libro y volver a abrirlo.

Una vez hecho esto, cuando vamos a insertar la función aparecerá la descripción tanto en el cuadro de diálogo Insertar función


Como en el cuadro de diálogo Argumentos de función



Aunque esta manera de añadir una descripción a priori no es tan simple como la explicada en la anterior nota, nos permite añadir otras opciones como, por ejemplo, definir en qué categoría queremos que aparezca dicha función. Esto lo explicaremos en una nota futura.

6 comentarios:

Anónimo dijo...

Y desde visual studio con C# o VB; ¿cómo se haría? ¿cómo escribir la descripción de una función o addin?

Aladino dijo...

Buenas tardes, Anónimo

¿Quieres crear una descripción desde VB o C# de una función o addin de Excel o en general?

Anónimo dijo...

Grande, buscaba como hacerlo.

Gracias por el post.

Claudia Castellano dijo...

Gracias por leernos

Anónimo dijo...

Esta excelente la información, gracias.Pero, si quiero añadir una descripción a cada uno de los argumentos de la función?, me seria de gran ayuda esa respuesta

Unknown dijo...

Hola,

La respuesta a tu consulta es sencilla o complicada dependiendo de la versión de Excel que tengas.

Excel 2010 tiene un nuevo argumento dentro del método Application.MacroOptions llamado ArgumentDescriptions que te permite hacer lo que indicas.

En versiones anteriores incluida la 2007, VBA no permite agregar descripciones de argumentos y hay que utilizar los trucos descubiertos por Laurent Longre, Jan Karel Pieterse y Jurgen Volkerink.

Si necesitas un ejemplo de cómo se hace esto, envíame un mensaje utilizando el formulario de la derecha y te explico cómo hacerlo.

Publicar un comentario

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Top WordPress Themes