¿Cómo crear una macro o script VBA en Excel? - 3 - septiembre 7, 2022

¿Cómo crear una macro o script VBA en Excel?

Microsoft Excel permite a los usuarios automatizar funciones y comandos mediante macros y secuencias de comandos de Visual Basic para aplicaciones (VBA). VBA es el lenguaje de programación que utiliza Excel para crear macros. También ejecutará comandos automatizados basados ​​en condiciones específicas.

¿Cómo crear una macro o script VBA en Excel? - 5 - septiembre 7, 2022

Las macros son una serie de comandos pregrabados. Se ejecutan automáticamente cuando se da un comando específico. Si tiene tareas en Microsoft Excel que realiza repetidamente, como contabilidad, gestión de proyectos o nómina, la automatización de estos procesos puede ahorrarle mucho tiempo.

En la pestaña Desarrollador de la cinta de opciones de Excel, los usuarios pueden registrar los clics del mouse y las pulsaciones de teclas (macros). Sin embargo, algunas funciones requieren secuencias de comandos más detalladas que las que pueden proporcionar las macros. Aquí es donde las secuencias de comandos de VBA se convierten en un gran beneficio. Permite a los usuarios crear scripts más complejos.

¿Cómo crear una macro o script VBA en Excel? - 7 - septiembre 7, 2022

En este artículo, explicaremos lo siguiente:

  • Habilitación de scripts y macros
  • Cómo crear una macro en Excel
  • Ejemplo específico de una macro
  • Más información sobre VBA
  • Cree un botón para comenzar con VBA
  • Agregar código para dar funcionalidad al botón
  • ¿Funcionó?

Habilitación de scripts y macros

Antes de poder crear macros o secuencias de comandos VBA en Excel, debe habilitar la pestaña Desarrollador en el menú Cinta. La pestaña Desarrollador no está habilitada de forma predeterminada. Para habilitarlo:

  • Abra una hoja de cálculo de Excel.
  • Haga clic en Archivo > Opciones > Personalizar cinta.
¿Cómo crear una macro o script VBA en Excel? - 9 - septiembre 7, 2022
  • Ponga una marca en la casilla junto a Desarrollador.
¿Cómo crear una macro o script VBA en Excel? - 11 - septiembre 7, 2022
  • Haga clic en la pestaña Desarrollador del menú Cinta.
¿Cómo crear una macro o script VBA en Excel? - 13 - septiembre 7, 2022
  • A continuación, haga clic en Seguridad de macros y marque la casilla junto a Habilitar todas las macros (no recomendado; se puede ejecutar código potencialmente peligroso).
  • Luego haga clic en Aceptar.
¿Cómo crear una macro o script VBA en Excel? - 15 - septiembre 7, 2022

La razón por la que las macros no están activadas de forma predeterminada y vienen con una advertencia es que son códigos de computadora que podrían contener malware.

Asegúrese de que el documento sea de una fuente confiable si está trabajando en un proyecto compartido en Excel y otros programas de Microsoft.

Cuando termine de usar sus secuencias de comandos y macros, deshabilite todas las macros para evitar que código potencialmente malicioso infecte otros documentos.

Crear una macro en Excel

Todas las acciones que realiza en Excel mientras graba una macro se le agregan.

  • En la pestaña Desarrollador, haga clic en Grabar macro.
¿Cómo crear una macro o script VBA en Excel? - 17 - septiembre 7, 2022
  • Introduzca un nombre de macro, una tecla de acceso directo y una descripción. Los nombres de las macros deben comenzar con una letra y no pueden tener espacios. La tecla de acceso directo debe ser una letra.

Decide dónde quieres almacenar la macro entre las siguientes opciones:

  • Libro de trabajo de macros personal: esto creará un documento de Excel oculto con macros almacenadas para usar con cualquier documento de Excel.
  • Nuevo libro de trabajo: creará un nuevo documento de Excel para almacenar las macros creadas.
  • Este libro de trabajo: esto solo se aplicará al documento que esté editando actualmente.

Cuando haya terminado, haga clic en Aceptar.

  • Ejecute las acciones que desea automatizar. Cuando haya terminado, haga clic en Detener grabación.
  • Cuando desee acceder a su macro, use el atajo de teclado que le dio.

Ejemplo específico de una macro

Comencemos con una hoja de cálculo simple para los clientes y cuánto deben. Comenzaremos creando una macro para formatear la hoja de trabajo.

¿Cómo crear una macro o script VBA en Excel? - 19 - septiembre 7, 2022

Supongamos que decide que todas las hojas de cálculo deben usar un formato diferente, como poner el nombre y el apellido en columnas separadas.

Puede cambiar esto manualmente. O puede crear un programa usando una macro para formatearlo automáticamente correctamente para usted.

Grabar la macro

  • Haga clic en Grabar macro. Llamémoslo Format_Customer_Data y haga clic en Aceptar.
  • Para obtener el formato que queremos, cambiaremos el nombre de la primera columna a First Name .
  • Luego inserte una columna al lado de A y llámela Apellido .
  • Resalte todos los nombres en la primera columna (que aún incluyen el nombre y el apellido) y haga clic en Datos en la barra de navegación.
  • Haga clic en Texto a columnas.
¿Cómo crear una macro o script VBA en Excel? - 21 - septiembre 7, 2022
  • Marque Delimitado > Siguiente > Separar por espacio > Siguiente > Finalizar . Vea la captura de pantalla a continuación y cómo se separaron el nombre y el apellido mediante el proceso anterior.
¿Cómo crear una macro o script VBA en Excel? - 23 - septiembre 7, 2022
  • Para dar formato al campo Saldo adeudado, resalte los importes. Haga clic en Inicio > Formato condicional > Resaltar reglas de celdas > Mayor que > 0 .
¿Cómo crear una macro o script VBA en Excel? - 25 - septiembre 7, 2022

Esto resaltará las celdas que tienen un saldo adeudado. Agregamos algunos clientes sin saldo para ilustrar mejor el formato.

  • Vuelva a Desarrollador y haga clic en Detener grabación.
¿Cómo crear una macro o script VBA en Excel? - 27 - septiembre 7, 2022

Aplicar la macro

Comencemos con la hoja de cálculo original antes de grabar la macro para formatearla correctamente. Haga clic en Macros, seleccione y ejecute la macro que acaba de crear.

Cuando ejecuta una macro, todo el formato se hace por usted. Esta macro que acabamos de crear se almacena en el Editor de Visual Basic.

Los usuarios pueden ejecutar macros de varias maneras diferentes. Lea Ejecutar una macro para obtener más información.

Más información sobre VBA

Para obtener información sobre VBA, haga clic en Macro en la pestaña Desarrollador. Busque uno que haya creado y haga clic en Editar.

¿Cómo crear una macro o script VBA en Excel? - 29 - septiembre 7, 2022

El código que ve en el cuadro de arriba es lo que se creó cuando grabó su macro.

También es lo que ejecutará cuando desee formatear otras hojas de cálculo de pagos de clientes de la misma manera.

Cree un botón para comenzar con VBA

Usando la misma hoja de cálculo anterior con los clientes y cuánto deben, creemos un convertidor de divisas.

  • Para insertar un elemento de botón, vaya a la pestaña Desarrollador.
  • Seleccione Botón de comando ActiveX en el menú desplegable junto a Insertar en la sección Controles.
¿Cómo crear una macro o script VBA en Excel? - 31 - septiembre 7, 2022
  • Arrastra el botón a cualquier parte de la hoja de cálculo para que puedas acceder fácilmente y cambiarlo más tarde si lo deseas.
¿Cómo crear una macro o script VBA en Excel? - 33 - septiembre 7, 2022
  • Para adjuntar el código, haga clic derecho en el botón y seleccione Propiedades. Mantendremos el Nombre como CommandButton y el Caption to Convert (este es el texto del botón).
¿Cómo crear una macro o script VBA en Excel? - 35 - septiembre 7, 2022

Agregar código para dar funcionalidad al botón

La codificación de VBA no tiene lugar en la interfaz de Excel. Se realiza en un ambiente separado.

  • Vaya a la pestaña Desarrollador y asegúrese de que el Modo de diseño esté activo.
¿Cómo crear una macro o script VBA en Excel? - 37 - septiembre 7, 2022
  • Para acceder al código del botón que acabamos de crear, haga clic derecho sobre él y seleccione Ver código.
¿Cómo crear una macro o script VBA en Excel? - 39 - septiembre 7, 2022
  • Mirando el código en la captura de pantalla a continuación, observe que el principio (Private Sub) y el final (End Sub) del código ya están allí.
¿Cómo crear una macro o script VBA en Excel? - 41 - septiembre 7, 2022
  • El siguiente código impulsará el procedimiento de conversión de moneda.
  • CeldaActiva.Valor = (CeldaActiva * 1.28)

Nuestro propósito en esta sección es convertir la moneda en nuestra hoja de cálculo. El guión anterior refleja el tipo de cambio de GBP a USD. El nuevo valor de una celda será el que hay actualmente multiplicado por 1,28.

La siguiente captura de pantalla muestra cómo se ve el código en la ventana de VBA después de insertarlo.

¿Cómo crear una macro o script VBA en Excel? - 43 - septiembre 7, 2022
  • Vaya a Archivo en la barra de navegación superior y haga clic en Cerrar y volver a Microsoft Excel para volver a la interfaz principal de Excel.
¿Cómo crear una macro o script VBA en Excel? - 45 - septiembre 7, 2022

¿Funcionó?

Antes de que pueda probar su código, primero debe deshabilitar el modo de diseño (haga clic en él) para evitar más modificaciones y dar funcionalidad al botón.

  • Escriba cualquier número en su hoja de cálculo y luego haga clic en el botón Convertir. Si el valor de su número aumenta en aproximadamente una cuarta parte, funcionó.

Para este ejemplo, puse el número 4 en una celda. Después de hacer clic en Convertir, el número cambió a 5.12. Como 4 por 1,28 es 5,12, el código se realizó correctamente.

¿Cómo crear una macro o script VBA en Excel? - 47 - septiembre 7, 2022

Ahora que sabe cómo crear una macro o un script en Excel, puede usarlos para automatizar una multitud de acciones en Excel.