martes, 22 de octubre de 2019

Creación del Libro Personal en el Excel de un Mac

Previamente hemos conseguido la pestaña Programador siguiendo los pasos de este post:

Vamos a crear una macro con grabadora. La macro será enormemente sencilla, simplemente situaremos el cursor en alguna celda y con ello finalizaremos la grabación de la macro. Lo interesante no será la macro que hemos creado en sí misma, sino que hemos dicho que se grabe en el libro Personal de forma que si previamente no estaba creado en este ordenador conseguiremos que se cree.

Los pasos a seguir son los siguientes.

Paso 1

Ir a la ficha Programador


Paso 2

Crear macro

Paso 3

No cambiaremos el nombre de la macro que vamos a crear. El nombre Macro1 nos vale perfectamente.
Lo que sí haremos es elegir que se grabe en el "Libro de macros personal". Esto se hace así para que obliguemos a Excel a que cree el libro en nuestro ordenador por si previamente no existía.
Aceptar.

Paso 4

Comprobemos que se ha creado el Libro de macros Personal. Para ello en la pestaña Programador elegimos Visual Basic, que es el icono que hay a la izquierda.
Al hacer esto veremos el Editor de Visual Basic que es el de la siguiente imagen.

Paso 5

A la izquierda podremos ver que pone VBAproject(PERSONAL.XLSB) eso quiere decir que se ha creado bien el libro personal.
Pulsaremos sobre el signo + que aparece a la izquierda del libro personal para que se abra ese desplegable.
También pulsaremos sobre el signo +  que aparece a la izquierda de la palabra Módulos, y así podremos ver el Módulo1 que aparece en la imagen.



Paso 6

Hacemos doble click sobre el Módulo1. No basta con hacer un solo click, debe ser doble click. De esta forma llegaremos a ver las macros que contiene este módulo. En la imagen siguiente únicamente se muestra una macro que contiene este Módulo1. Se trata de la macro que se creó con la grabadora de macros.

Paso 7

La macro que se creó con la grabadora de macros denominada Macro1 no nos sirve para nada ya que únicamente se creó en el libro personal para forzar a Excel a que creara el libro Personal. Ahora, si así lo queremos podemos borrar la macro. Como es texto, simplemente la seleccionamos y la borramos con la tecla suprimir del teclado.

Paso 8

Es ese Módulo1 escribiremos nuestro código VBA (Visual Basic for Applications) que en este caso en lugar de ser una macro será unas funciones que luego podremos usar.
En nuestro caso crearemos dos funciones una para calcular el valor actual de una renta geométrica y otra para calcular el valor final de este tipo de rentas. El código es el siguiente.


Function VAgeo(C, q, n, i)
If q = 1 + i Then
    VAgeo = C * n / (1 + i)
Else
    VAgeo = C * (1 - (q / (1 + i)) ^ n) / (1 + i - q)
End If
End Function

Function VFgeo(C, q, n, i)
VFgeo = VAgeo(C, q, n, i) * (1 + i) ^ n
End Function


Este código se ha de incluir en nuestro módulo quedando así.

Paso 9

Grabamos el código que hemos creado pulsando arriba el icono que representa un disquete.

Paso 10

Comprobemos que todo funciona bien. En la hoja de cálculo en una celda escribimos:

=personal.xlsb!vageo(1000;1,1;8;5%)

Con ello estamos pidiendo a Excel que calcule el valor actual de una renta geométrica pospagable de 8 términos anuales, donde el primero de ellos es de 1.000 €, y el resto se incrementan anualmente un 10%, por lo que la razón de de la renta geométrica es 1,1 y donde todo ello se valora al 5% anual.

Los datos son:

  • C=1000
  • q=1,1
  • n=8
  • i=0,05


Paso 11

Si todo va bien el resultado obtenido, usando los datos anteriores, es 9017,305652.

Paso 12

Comprobación. Veamos qué resultado se obtiene al calcular el valor actual de esta renta utilizando el VAN con la función de Excel VNA. La fórmula sería

=VNA(5%;D3:D10)

En la imagen se puede ver que el resultado obtenido es de 9.017,31 € que redondeado a dos decimales y con formato de euros, coincide con el anteriormente obtenido con el VAgeo programado.


Notas


  • Los pasos iniciales se deben realizar solo una vez para conseguir crear el libro PERSONAL.XLSB en nuestro ordenador. Posteriormente, si deseamos incluir más fórmulas en el libro Personal simplemente las iremos añadiendo como texto unas debajo de otras en el Módulo1.
  • El libro Personal tiene la ventaja de que todas las fórmulas y macros que incluyamos en él estarán disponibles para los nuevos libros de Excel que creemos en el futuro. Esto supone que, en ese ordenador cualquier libro nuevo que se cree permitirá utilizar las funciones programadas, y evitaremos tener que estar incluyendo estas macros en todos los libros que las necesiten.
  • En principio las macros y funciones creadas en el libro Personal estarán disponibles únicamente para los libros nuevos que se creen en el futuro. Pero para los libros antiguos, los que ya teníamos grabados antes de crear el libro Personal es posible que no tengamos operativas las fórmulas programadas, del tipo VAgeo. Esto lo podemos comprobar y si realmente no nos funciona VAgeo en los libros antiguos existen dos soluciones. La primera de ellas es que si en el libro antiguo ya teníamos creada la macro asociada a ese libro, ésta seguirá funcionado y no necesitaremos hacer nada. La segunda solución, en caso de que no tengamos las funciones ya programadas en el libro antiguo consiste en hacer un duplicado del libro antiguo y grabarlo con otro nombre. De esta forma al grabar el duplicado con un nuevo nombre ya se tratará de un libro nuevo donde funcionará perfectamente toda fórmula que tengamos creada en el libro Personal.
  • No olvidemos que al grabar los libros que usan macros deben ser grabados con la extensión .xlsm en lugar de la habitual para hojas de cálculo sin macros que es .xlsx. La extensión en ocasiones no está visible en nuestro ordenador en cuyo caso nos tenemos que fijar en que al grabar ponga "Libro de Excel habilitado para macros".


No hay comentarios:

Publicar un comentario