Crear funciones de hoja de cálculo propias

Se aplica a
Microsoft Office Excel 2003
Microsoft Excel 2000 y 2002

Si utiliza con frecuencia un cálculo complejo en Excel, no es necesario que escriba una fórmula larga y complicada repetidas veces. Puede crear su propia función de hoja de cálculo para realizar los cálculos. Después, puede utilizar esa función para crear fórmulas más sencillas de introducir y mantener.

Para crear sus propias funciones personalizadas, debe trabajar con Microsoft Visual Basic® para Aplicaciones (VBA). VBA es un lenguaje de programación integrado en Excel. Este lenguaje de programación es muy flexible y puede hacer todo lo que hacen las fórmulas de Excel y mucho más.

Por ejemplo, supongamos que tiene una fórmula compleja para calcular las comisiones de ventas donde el porcentaje de la comisión cambia dependiendo de varios factores como los productos, las ventas totales por trimestre y los tipos de productos que vende un comercial, si el comercial trabaja con un sistema de cuotas. En vez de introducir una fórmula larga y complicada que tenga en cuenta todos esos factores cada vez que se desee calcular una comisión por venta, puede crear una función personalizada para comisiones. Después, todo lo que debe escribir en las fórmulas para la comisión es el nombre de la función.

Además, si su organización cambia las normas para el cálculo de las comisiones, no tendrá que buscar y realizar tediosos cambios en todas las fórmulas complejas. Sólo tendrá que realizar cambios en la función personalizada para actualizar todas las fórmulas del libro.

Los siguientes pasos muestran cómo crear y utilizar una función personalizada. Para seguir con el mismo ejemplo, esta función calcula la comisión de las ventas a un 6% fijo. Para sacar el máximo partido a una función personalizada, debería sustituir el código complejo de VB por este cálculo simple del porcentaje.

  1. En el menú Herramientas, elija Macro y, a continuación, haga clic en Editor de Visual Basic.
  2. En el menú Insertar de la ventana de Microsoft Visual Basic, haga clic en Módulo.
  3. En la ventana Módulon, escriba el código para la función. Por ejemplo, una función para calcular el 6% de comisión de las ventas, debe ser como esta:

Ejemplo de un código de VBA para una función personalizada

La primera línea del ejemplo anterior crea una función denominada Comisión que realiza los cálculos en un número o celda de referencia. La función utiliza la variable MiNúm para almacenar el número o valor de la celda. La segunda línea calcula el valor de la función Comisión al multiplicar el número o celda de referencia (MiNúm) por 0,06 (una fórmula más compleja puede tener varias líneas de código para realizar los cálculos). La tercera línea pone fin al código de la función.

  1. En el menú Archivo, haga clic en Cerrar y volver a Microsoft Excel.
  2. En el libro, utilice la función en las fórmulas como lo haría con cualquier otra función del libro. Por ejemplo, puede utilizar la función Comisión para calcular las comisiones de las ventas:

Utilizar una función personalizada en una fórmula en un libro

Cualquier función que haya creado de esta forma sólo se podrá utilizar en el libro en el que haya creado dicha función. Si desea utilizar la función en otro libro, puede copiar el código para la función en los módulos de VBA de otros libros. Si es programador, también puede copiar la función en un libro que utilice como biblioteca de funciones y compilar ese libro como complemento.

 Nota   El ejemplo de este artículo está muy simplificado para mostrar las tareas básicas. Para crear funciones complejas en VBA, necesitará algunos conocimientos del modelo de objeto VBA de Excel 2000, las estructuras de VB y el entorno VBA. Por ejemplo, puede que desee declarar un argumento y devolver los tipos de datos en cualquier función que haya creado. Para empezar a aprender sobre la programación en VBA, consulte las referencias que aparecen más abajo.

Más información

Para obtener más información sobre cómo crear fórmulas que incluyan funciones, escriba funciones en fórmulas en el Ayudante de Office o en la ficha Asistente para Ayuda en la ventana Ayuda de Microsoft Excel y, a continuación, haga clic en Buscar.

Para obtener información sobre cómo crear funciones personalizadas en VBA, escriba procedimiento función en el Ayudante de Office o en la ficha Asistente para Ayuda en la ventana Ayuda de Microsoft Visual Basic de Excel, haga clic en Buscar y, a continuación, haga clic en los temas "Escribir un procedimiento Función" e "Instrucción Función."

Si no tiene experiencia en programación de VBA la guía Microsoft Office 2000/Visual Basic Programmer's Guide contiene información que le ayudará a obtener los conocimientos fundamentales. Para obtener información sobre cómo obtener esta guía, escriba guía para programadores en el Ayudante de Office o en la ficha Asistente para Ayuda en la ventana Ayuda de Microsoft Excel y, a continuación, haga clic en Buscar.

 
 
Corresponde a:
Excel 2003