1. Libros y videos
  2. VBA Excel (versiones 2024 y Microsoft 365)
  3. Presentación
Extrait - VBA Excel (versiones 2024 y Microsoft 365) Programar en Excel: macros y lenguaje VBA
Extractos del libro
VBA Excel (versiones 2024 y Microsoft 365) Programar en Excel: macros y lenguaje VBA Volver a la página de compra del libro

Presentación

Presentación del lenguaje VBA

Visual Basic para Aplicaciones (VBA) es el lenguaje de programación común a todas las aplicaciones del paquete Microsoft Office (Word, Access, Excel, Outlook y PowerPoint), que están disponibles en la suite Office 2024 y en Microsoft 365.

1. Objetivos del lenguaje VBA

Trabajando en Excel, el lenguaje VBA permite:

  • automatizar acciones repetitivas: con VBA puede realizar en una única operación todo un grupo de comandos de Excel;

  • interactuar sobre los libros de Excel: el contenido y la presentación de todos los elementos incluidos en un libro (hojas, celdas, gráficos, etc.) se pueden modificar a través de código VBA;

  • crear formularios personalizados: los formularios son los cuadros de diálogo compuestos por controles ActiveX (cuadros de texto, listas desplegables, etc.), a los que se les puede asociar código VBA. Los formularios permiten crear interfaces amigables para la entrada o la salida de información;

  • generar automáticamente tablas dinámicas y gráficos: así podrá automatizar la creación de estadísticas a partir de sus datos de Excel (o de los datos de la empresa exportados a Excel);

  • personalizar la interfaz de Excel: la cinta de opciones de Office es totalmente personalizable y se pueden asociar macros creadas en lenguaje VBA a los comandos de la cinta o a la barra de herramientas de acceso rápido; 

  • modificar las opciones de Excel: a cada opción de Excel le corresponde una propiedad de un objeto VBA. Por ejemplo, puede modificar el tipo de fuente por defecto a partir de las propiedades StandardFont (fuente) y StandardFontsize (tamaño de fuente) del objeto Application;

Ejemplo:

Application.StandardFont = «Arial»

Application.StandardFontSize = «10»...

Las macros de Excel

1. Mostrar la pestaña Programador en la cinta de opciones

Para escribir macros, ejecutar macros grabadas o crear aplicaciones de Excel, debe mostrar la pestaña Programador de la siguiente manera:

 Haga clic en la pestaña Archivo y luego en Opciones.

 Seleccione la categoría Personalizar cinta de opciones.

 Dentro de Personalizar cinta de opciones, en la lista Pestañas principales, marque la opción Programador.

 Haga clic en el botón Aceptar: la pestaña Programador se añadirá a la cinta de opciones de Excel, a la derecha de la pestaña Vista.

2. Descripción de la pestaña Programador

images/24-01RIT01.png

a. Grupo Código

Nombre del botón

Descripción

images/24-01RIT02.png

Abre el entorno de desarrollo. El método abreviado de teclado es [Alt][F11].

images/24-01RIT03.png

Muestra la lista de macros. El método abreviado de teclado es [Alt][F8].

images/24-01RIT04.png

Comienza la grabación de una macro.

images/24-01RIT05.png

Permite usar referencias relativas a la primera celda seleccionada.

images/24-01RIT06.png

Personaliza la configuración de seguridad de las macros.

b. Grupo Complementos

Nombre del botón

Descripción

images/24-01RIT07.png

Permite descargar complementos de Office.

images/24-01RIT08.png

Permite seleccionar macros grabadas como complementos.

images/24-01RIT09.png

Permite seleccionar complementos COM (librerías de funciones complementarias).

c. Grupo Controles

Nombre del botón

Descripción

images/24-01RIT10.png

Permite insertar controles (formularios o ActiveX) en Excel.

images/24-01RIT11.png

Activa o desactiva el modo Diseño. En el modo Diseño se pueden seleccionar y modificar los controles ActiveX, pero no se pueden ejecutar.

images/24-01RIT12.png

Muestra las propiedades del objeto de Excel seleccionado (hoja o control).

images/24-01RIT13.png

Permite acceder directamente al código asociado al control seleccionado.

images/24-01RIT14.png

Ejecuta un cuadro de diálogo personalizado.

3. Grabar una macro

a. Grabar la primera macro

Veamos cómo crear una macro que aplique un borde y un relleno en las celdas seleccionadas.

 Seleccione una rango de celdas.

 Haga clic en el botón images/24-01RIT04.png (Grabar macro) en la pestaña Programador o en la barra de estado.

 En el cuadro de diálogo que aparece, escriba el nombre de la macro, su descripción e indique, si lo desea, el método abreviado de teclas asociado.

images/24-01RIT15.png

 Haga clic en el botón Aceptar para iniciar la grabación.

 Realice en Excel las operaciones que desee grabar. Por ejemplo, aplique un relleno y un borde al rango actualmente seleccionado.

 Haga clic en el botón images/24-01RIT16.png (Detener grabación) de la pestaña Programador para terminar la grabación (también puede usar el mismo botón en la barra de estado).

b. Ejecutar una macro

Para ejecutar una macro desde Excel:

 Haga clic en el botón images/24-01RIT03.png de la pestaña Programador o pulse el método abreviado de teclas [Alt][F8] y luego haga doble clic en el nombre de la macro que desea ejecutar.

 O pulse la combinación de teclas asociada a la macro.

Para visualizar la información relativa a una macro (método abreviado de teclado y descripción), seleccione la macro en la lista y haga clic en el botón Opciones.

Para detener la ejecución de una macro, pulse [Escape] o [Ctrl][Pausa].

c. Grabar una macro con referencias relativas

Si graba una macro en modo de referencias absolutas (modo por defecto), los rangos de celdas referenciados en las operaciones de selección, desplazamientos... serán fijos. Por ejemplo: Range("A2") designa la celda A2.

Si graba una macro en modo de referencias relativas, los rangos de celdas serán expresados en relación con la posición de la primera celda activa. Por ejemplo: ActiveCell.range("A2") designa la celda ubicada bajo la celda activa, ActiveCell.range("B1") designa la celda ubicada a la derecha de la celda activa.

ActiveCell.range("A1") siempre hace referencia a la primera celda activa. A1 se puede considerar la referencia relativa a la primera celda activa.

Para grabar una macro con referencias relativas:

 Haga clic en el botón images/24-01RIT05.png (Usar referencias relativas) de la pestaña Programador: el botón quedará activo (se verá destacado).

Si vuelve a hacer clic en el botón images/24-01RIT17.png (Usar referencias relativas), este quedará desactivado y las macros se grabarán con referencias absolutas.

Ejemplo

La misma secuencia de operaciones se ha registrado en dos macros: la primera (RefRelativa) se grabó con la opción referencias relativas; la segunda (RefAbsoluta), con la opción referencias absolutas.

La secuencia de operaciones es la siguiente:

- Seleccionar un rango de celdas.

- Desplazar el rango dos filas hacia abajo y una columna a la derecha.

Sub RefRelativa() 
‘  Referencias relativas 
   ActiveCell.Range(”A1:B7").Select 
   Selection.Cut Destination:=ActiveCell.Offset(2, 1).Range(“A1:B7") 
   ActiveCell.Offset(2, 1).Range(”A1:B7").Select 
End Sub 
___________________________________________________________________ 
Sub RefAbsoluta() 
‘  Referencias absolutas 
   Range(“B2:C8").Select 
   Selection.Cut Destination:=Range(”C4:D10") 
   Range(“C4:D10").Select 
End Sub 

d. Definir el lugar de almacenamiento de una nueva macro

Para definir el lugar de almacenamiento de una nueva macro:

 Haga clic en el botón images/24-01RIT03.png de la pestaña Programador o pulse el método abreviado [Alt][F8].

 Abra la lista Macros en y seleccione el libro en el que desea crear la macro.

images/24-01RIT18.png

Si elige Libro de macros personal, la macro se grabará en el libro personal.xlsb; la macro será accesible desde todos los libros Excel.

e. Eliminar una macro

Para eliminar una macro:

 Haga clic en el botón images/24-01RIT03.png de la pestaña Programador o pulse el método abreviado [Alt][F8].

 Seleccione la macro que desea eliminar y haga clic en el botón Eliminar. Haga clic en el botón para confirmar la eliminación.

f. Guardar un libro con macros

Los libros que contienen macros tienen la extensión xlsm (en vez de xslx) y su icono...

Asignar una macro

Una macro se puede asociar a los siguientes elementos:

  • Comandos personalizados en la cinta de opciones.

  • Botones de comando en la barra de herramientas de acceso rápido.

  • Controles u objetos insertados en las hojas de Excel (botones de comando, imágenes, etc.).

1. Acceso a una macro desde la cinta de opciones de Office

Microsoft Office ofrece la posibilidad de personalizar la cinta de opciones: puede agregar, eliminar o reasignar las pestañas, grupos y comandos de la cinta para disponer de aplicaciones personalizadas.

Para personalizar la cinta de opciones:

 Haga clic en el botón derecho del ratón sobre la cinta y seleccione la opción Personalizar la cinta de opciones.

o

 Haga clic en la pestaña Archivo, luego en Opciones y seleccione la categoría Personalizar cinta de opciones.

Aparecerá el siguiente cuadro:

images/24-01RIT24.png

Para insertar macros en una nueva pestaña:

 Haga clic en el botón Nueva pestaña. Se agregará una pestaña y un grupo a la lista de pestañas principales.

 Para cambiar el nombre de la pestaña y del grupo que acaba de crear, haga clic en el botón Cambiar nombre. El menú contextual también le permite agregar pestañas o grupos.

 Despliegue las opciones dentro de Comandos disponibles en: (a la izquierda y arriba) y seleccione Macros. Aparecerá la lista de macros disponibles.

 Seleccione la macro que desea agregar al grupo y haga clic en Agregar.

 Para modificar el nombre y el icono de la macro haga clic en el botón Cambiar nombre.

 También puede cambiar el orden de las pestaña, grupos y comandos con las flechas situadas a la derecha de la lista.

Ejemplo de personalización:

images/24-01RIT25.png

 Para confirmar esta personalización, haga clic en Aceptar. La nueva pestaña aparecerá en la cinta de opciones de Office:

images/24-01RIT26.png

Usted puede restablecer la cinta de opciones en cualquier momento desde el cuadro de diálogo para personalizar la cinta, haciendo clic en el botón Restablecer (puede restablecer toda la cinta o solamente una pestaña). También puede importar una cinta personalizada haciendo clic en el botón Importar o exportar.

2. Asociar una macro a un icono de la barra de herramientas de acceso rápido

También puede insertar un comando para ejecutar una macro en la barra de herramientas de acceso rápido:

 Haga clic en el botón derecho del ratón sobre la cinta de opciones y seleccione la opción Personalizar barra de herramientas de acceso rápido.

 En la lista desplegable Comandos disponibles en situada arriba y a la izquierda, seleccione Macros. Aparecerá la lista de macros disponibles.

 Seleccione la macro que desee y haga clic en el botón Agregar. La macro pasará a la lista de la derecha.

images/24-01RIT27.png

 Haga clic en el botón Modificar... para seleccionar un nuevo icono para la macro.

 Puede modificar el orden de los comandos con las flechas ubicadas a la derecha de la lista.

 Puede seleccionar un libro en la lista desplegable Personalizar barra de herramientas de acceso rápido situada arriba y a la derecha. En ese caso las modificaciones solamente afectarán al libro indicado.

 Gracias a la casilla de selección Mostrar siempre...

El entorno de desarrollo VBE

VBE (Visual Basic Editor) es el entorno en el que puede escribir, modificar y probar su código VBA. Este entorno se llama también IDE (Integrated Development Environment) o editor de VBA.

El entorno VBE pone a su disposición numerosas herramientas para facilitar la programación y la puesta a punto de su código VBA: herramientas de depuración, introducción asistida, explorador de objetos, etc.

1. Acceso al entorno VBE

 Para acceder al entorno VBE desde Excel, haga clic en el botón images/24-01RIT02.png de la pestaña Programador o pulse la combinación [Alt][F11].

2. Cerrar el entorno VBE

Para cerrar el entorno VBE y volver a Excel:

 Haga clic en el aspa roja ubicada arriba a la derecha de la ventana principal del entorno VBE.

o

 Haga clic en la opción Cerrar y volver a Microsoft Excel del menú Archivo

3. Volver a Excel

Para volver a Excel sin cerrar el entorno VBE, use cualquiera de estas dos posibilidades:

 Haga clic en el icono images/01RIN37.PNG de la barra de herramientas Estándar.

 Pulse el método abreviado [Alt][F11].

4. Descripción del entorno VBE

Todas las ventanas del entorno VBE se pueden visualizar desde el menú Ver.

images/24-01RIT33.png

(1) La barra de herramientas Estándar

images/CAP01IMG35.png

1 Ver a Microsoft Excel

2 Insertar UserForm

3 Guardar libro

4 Cortar

5 Copiar

6 Pegar

7 Buscar

8 Deshacer

9 Rehacer

10 Ejecutar Sub

11 Interrumpir

12 Restablecer

13 Modo de diseño

14 Explorador de proyectos

15 Ventana de Propiedades

16 Examinador de objetos

17 Cuadro de herramientas

18 Ayuda de Microsoft Visual Basic

19 Posición actual en la ventana de código

(2) El explorador de proyectos

Cada libro abierto en Excel tiene asociado un proyecto. El explorador de proyectos permite ver todos los proyectos y todos los módulos de cada proyecto según una estructura en árbol. Los módulos se agrupan en cuatro categorías:

  • Módulos asociados a objetos de Excel (libro y hojas).

  • Módulos asociados a formularios.

  • Módulos estándares.

  • Módulos de clase.

Cada módulo puede contener muchos procedimientos.

(3) La ventana Propiedades

Muestra las propiedades relativas al libro, a las hojas de cálculo, a las hojas gráficas y a los formularios.

(4) La ventana Código

En esta ventana aparecen dos zonas con listas desplegables:

  • La zona objeto (10) muestra la lista de los objetos del módulo.

  • La zona procedimiento (11) muestra los procedimientos o los eventos del objeto seleccionado en la zona objeto. Los eventos ya usados aparecen en negrita. 

(5) Instrucciones que se completan automáticamente

Cuando se escribe el nombre de un objeto seguido de un punto, aparece automáticamente una lista desplegable con los métodos, propiedades y constantes disponibles para ese objeto.

Si la lista no aparece, seleccione Opciones en el menú Herramientas y marque la casilla Lista de miembros automática de la pestaña Editor.

(6) Ventana Inmediato

Contiene todos los valores de las variables que hayan sido definidas previamente...

Configuración del editor VBA

1. Configuración de la tipografía

Las palabras clave, las funciones y las instrucciones VBA aparecen en azul; los objetos, métodos y propiedades, en negro, y los comentarios, en verde. Las instrucciones que contienen errores se destacan en rojo.

 Para modificar el estilo (color, tipo de letra, tamaño) de los diferentes tipos de código, seleccione Opciones en el menú Herramientas y haga clic en la pestaña Formato del editor.

images/24-01RIT34.png

2. Configuración de la introducción de código

Existen diferentes herramientas que facilitan la introducción y la actualización del código VBA: por ejemplo, la comprobación automática de la sintaxis, la declaración obligatoria de las variables, las instrucciones que se completan automáticamente, etc.

 Para activar estas opciones, seleccione Opciones en el menú Herramientas y haga clic en la pestaña Editor.

images/24-01RIT35.png

3. Manejo de errores

Las opciones de interceptación de errores permiten establecer si la ejecución del código se interrumpirá al ocurrir un error de ejecución.

 Para activar esta opción, seleccione Opciones en el menú Herramientas y haga clic en la pestaña General.

images/24-01RIT36.png

 Si su código VBA incluye una gestión de errores, seleccione la opción Interrumpir en errores no controlados o no se tendrán...