lunes, 21 de septiembre de 2015

Agregar descripciones a funciones creadas en VBA


Hace un poco mas de 3 meses que no escribo nada en este blog, y me disculpo por ello, pero he estado mas ocupado que baño público en Mercado Central. El tiempo pasa volando,  y tengo varias cosas para publicar pero el factor tiempo me está limitando. Como diría un amigo... "me estoy quedando sin ancho de banda..."

Pero bueno, aquí les traigo un par de publicaciones buenísimas, y espero les sirva bastante.
Hace ya bastante tiempo publiqué como crear sus propias funciones en Excel con VBA (Visual Basic for Application...mas conocido en el mundo del ampa como Macros), aquí los enlaces de dichas publicaciones:

- Convertir un número en letras


En ambos casos, podemos crear las funciones y utilizarlas en Excel,sin embargo al utilizarlas, las funciones no traen ninguna descripción:

Voy a crear la Función NumTexto que encontramos en la publicación para Convertir un número a letras... Y al momento de utilizarla nos encontramos con lo siguiente:


Para colocarse una descripción entra en el editor de VBA (Ctrl+F11), luego abre ThisWorkbook e ingresa el código que mostramos:

Private Sub Workbook_Open()
    Dim Param(1 To 1) As String
    Param(1) = "Número que desea convertir en Texto"
  Application.MacroOptions Macro:="Num_texto", Description:="Convierte un número en una expresión de texto", ArgumentDescriptions:=Param
End Sub

Luego guardamos el archivo, lo cerramos y lo volvemos a abrir, y al ver la ayuda de la función encontraremos lo siguiente:


Explicación del código

En la linea 2, definimos una variable de tipo Array de Textos, y la definimos como (1 to 1), por que solo tenemos un parámetro, si tuviéramos 3 parámetros, lo cambiamos por (1 to 3)

En la linea 3, asignamos las descripciones de cada uno de los parámetros.

En la linea 4, indicamos la función que estamos actualizando mediante 

Macro:="Num_texto"

Nuestra función se llama Num_texto, luego definimos la descripción de la función y por ultimo enviamos las descripciones de los argumentos.

Espero que esta publicación les sirva.

Si tuviesen alguna consulta no dudes en indicamela y con gusto los ayudo.

Ing. Enrique Neciosup Morales
enrique@expertosenexcelpc.com 
Síguenos en Facebook