Funciones Definidas por el Usuario (FDU)
Enviado por alemanbor • 2 de Septiembre de 2014 • Tutorial • 10.101 Palabras (41 Páginas) • 398 Visitas
Funciones Definidas por el Usuario (FDU)
Por
Raúl Adrián Colazo
A Manera de Prólogo
El presente trabajo se realizó con mucho esfuerzo y dedicación, con el fin de afianzar conocimientos en aquellas personas que optaron por la gratificante labor de realizar sus funciones en el entorno de programación Visual Basic For Application residente en Microsoft Excel.
Con el a fin de presentar una gran variedad de ejemplos prácticos, recopilados a lo largo de varios años, he tratado de presentar ejercicios provechosos.
Me agradaría el hecho de que este material se difunda, siempre y cuando se respete el derecho de autor.
Solo me queda agradecer a Rodolfo Laria, por su desinteresada colaboración y a Uds. desearles la mejor de las suertes en el aprendizaje de Microsoft Excel.
Chamical - La Rioja - Argentina, Octubre de 2004.-
Adrián Colazo
Introducción
Esta obra se concentrará en realizar funciones personalizadas, desarrollando casos que prestarán utilidad, además de familiarice con el entorno de trabajo Microsoft Visual Basic For Application que Excel incluye.
Al proporcionar código fuente se intercalarán temas teóricos para una mejor comprensión, explicando cada ejemplo con el objeto de que se pueda seguir y reproducir.
La idea central es que es crear funciones con instrucciones y opciones poco difundidas, que darán a sus funciones un toque profesional.
Resulta necesario que el lector posea conocimiento básicos de VBA y con ganas de incrementar vuestra inteligencia.
Objetivos
Principal
• Crear una serie de módulos clasificados con distintas funciones personalizadas.
Secundarios
• Implementar soluciones mediante programación en el entorno Visual Basic For Application.
• Manejar las diferentes propiedades de distintos los objetos de Excel.
• Añadir módulos a su VBAProject.
• Emplear las funciones e instrucciones de VBA para obtener sus resultados.
• Dar un aspecto profesional a sus funciones.
Diferencia entre Función y Procedimiento
Una función (Function) es un código creado por un usuario que devuelve un valor, es un cálculo preprogramado que se puede realizar bajo petición desde una hoja Excel.
Las funciones contienen un par de paréntesis (según el lenguaje) en donde se especifican los argumentos. Los argumentos (o parámetros), son valores sobre los que actúa una función, una función, puede tener varios o ninguno. Por ultimo una función permite asignar valores a una(s)
celda(s) o variable(s).
Un procedimiento es una serie de instrucciones que funcionan como una unidad, una subrutina (Sub), un procedimiento también puede tener argumentos, pero no puede asignar valores a una(s) celda(s) o variable(s).
En resumen una función devuelve un valor y un procedimiento o subrutina no.
Veamos como crear una función que sume solo dos valores en distintos lenguajes.
C++
int suma(int a, int b){
return a + b;
}
FoxPro
Function Suma
Parameter a, b
Return a + b
End Function
Nuestro querido Visual Basic For Application
Function Suma(a As Integer, b As Integer) As Integer
Suma = a + b
End Function
Como podemos ver en cualquier lenguaje una función siempre devuelve un valor, el cual es asignado a una variable o devuelto a otra función, etc.
Como podemos apreciar en el último código en Visual Basic For Application a una función comienza con la instrucción Function seguida del nombre de la función, seguidamente entre paréntesis se declara los argumentos (que pueden o no estar presente), su tipo y separados por comas, le indicamos el tipo de valor a devolver inmediatamente después de la declaración de sus argumentos (seguida al paréntesis que cierra) con As tipo a devolver, debajo va el cuerpo de la función. Cuando asignamos un valor al nombre de la función le indicamos que devuelva ese valor, puede existir más de una asignación de valores a la función.
Consideraciones
Cabe destacar que una función no puede generarse por medio del Grabador de macros de Excel, es por ello que es fundamental aprender conceptos básicos.
Vamos a convenir que al finalizar cada ejercicio se explicará el funcionamiento funciones y/o instrucciones utilizadas, sino se detallan es por que en ejercicios anteriores ya se explicaron.
Antes de empezar con la elaboración de nuestras funciones realizamos lo siguiente: del menú principal, (del Editor) escogemos las opciones Herramientas / Opciones..., en la ficha Editor marcamos la casilla de verificación “Requerir declaración de variables”, esto se realizará por única vez.
Antes de empezar con cada módulo e introducirnos al código puro, pondremos debajo de Option Explicit, Option Compare Text, que establece que en la comparación de cadenas de texto no se distinga entre mayúsculas y minúsculas, por debajo de ésta instrucción escribir Option Base 1, que se utiliza a nivel de módulo para declarar el límite inferior predeterminado para subíndices de matriz (Rango, Matriz, Vector).
Para una mejor comprensión de las instrucciones que cabe normalmente en
...