Crea tus propias funciones en Excel con código VBA

Accede al editor de Visual Basic
Excel incluye una gran variedad de funciones que puedes utilizar para una gran variedad de situaciones. Las categorías en las que se encuentran clasificadas son, además, de la más diversa índole: matemáticas, estadísticas, financieras, trigonométricas… No se puede discutir que son muchas pero, quizá, dependiendo de tu actividad y trabajo diario, puede que eches de menos alguna más personalizada.
Nosotros te mostramos la manera de crear las tuyas propias. Así, partiendo de operaciones matemáticas y recurriendo al empleo de código VBA, podrás crear tantas funciones personalizadas como necesites.
Para empezar, desde una hoja de cálculo cualquiera, presiona la combinación de teclas Alt+F11 y te situarás en el Editor de Visual Basic. Desde él, selecciona la entrada correspondiente a un libro "especial" en Excel que se denomina Personal. A continuación, pincha en los menús Insertar y Módulo.

Si no apareciese disponible este libro (Personal.xls), cierra la ventana del editor y, desde la pantalla normal de Excel, graba una nueva macro con ayuda de la grabadora. Al hacerlo, podrás elegir ese libro. Inicia la grabación con el botón Aceptar y detenla inmediatamente desde el botón Detener grabación. De nuevo accede al editor de Visual Basic. Esta vez sí encontrarás disponible la entrada de la que te hablábamos antes.

Introduce el código VBA correspondiente a tu función personalizada
En este caso vas a diseñar una función que se encargue de aplicar un descuento (un porcentaje) a un valor inicial y así obtener el valor final (deduciéndole ese descuento). Así que, en el módulo en blanco que habrá aparecido en la parte derecha, introduce el código VBA correspondiente. Una vez escrito, cierra la ventana del editor de Visual Basic.

En este caso la función que estamos creando se llama Descuento. Por un lado, calcula la "rebaja" (el precio por un porcentaje) y, al precio inicial le resta ese descuento. Ninguno de esos dos valores con los que va a operar y que has definido en la primera línea, entre corchetes (precio y porcentaje de descuento) están todavía definidos. Lo harás tú mismo luego al utilizar esta función en Excel y en cada ocasión podrán ser diferentes.
Utiliza tu función en cualquier celda
A partir de ahora, podrás utilizar la función anterior desde cualquier hoja de cálculo. Para ello, abre una cualquiera y sitúate en aquella celda en la que deseas emplear tu función personalizada (en nuestro ejemplo en la B2). Accede entonces a la ficha o al menú Fórmulas y elige Insertar función.

En la nueva ventana que aparecerá, selecciona la categoría de funciones Definida por el usuario y aparecerá entonces disponible la fórmula que acabas de crear que, además, se llamaba concretamente Descuento. Asegúrate de tener su nombre seleccionado y pulsa el botón Aceptar.

Se mostrará así la pantalla de un asistente para funciones, preguntándote por los valores Precio y porcentaje con los que debe operar. Puedes introducirlos aquí directamente. Por ejemplo, si indicas un precio inicial de 100€ y le aplicas un 7% de descuento, obtendrías como resultado un precio final (precio inicial menos descuento) de 93 euros.

Opcionalmente, en lugar de introducir directamente la cifra, podrías hacer referencia a la celda que la contiene, por ejemplo uno de los valores (precio inicial) e introducir directamente el descuento.

En cualquier caso, tras pulsar Aceptar, verás el resultado directamente en tu hoja de cálculo.

Copiar la fómula en las celdas inferiores
Siempre que en Excel necesites copiar una fórmula en celdas adyacentes, puedes valerte del cuadro de llenado. Simplemente pinchando y arrastrando desde él, y desde la celda que contiene la fórmula original. En nuestro ejemplo, sólo has de seleccionar la primera celda en la que has aplicado la fórmula Descuento y aparecerá dicho cuadro en la esquina inferior derecha. Al situar el ratón sobre él, el puntero adopta la forma de una pequeña cruz negra.

Luego pincha y arrastra directamente hasta la última celda a la que desees aplicar la fórmula.

El resultado será automático: la primera fórmula se aplicará directamente al resto del rango, es decir, realizará cáculos en las celdas comprendidas en el rango B3:B6.

Descubre más sobre Fuencisla Mira, autor/a de este artículo.
Conoce cómo trabajamos en Computerhoy.