Comprender las macros de VBA

Última actualización el 08/10/2024
Tiempo de lectura: 3 minutos

En Excel, puedes diseñar programas informáticos reales utilizando Macros VBA.

Todos los programas de computadora se construyen de la misma manera.

  • variables (para almacenar valores intermedios)
  • Pruebas para comparar 2 elementos o 2 valores.
  • y finalmente bucles para realizar repeticiones de ejecución.

¿Macros o VBA?

Los términos son equivalentes hoy. Una búsqueda en Internet con uno u otro de estos términos le remitirá sistemáticamente a líneas de código.

En el origen de la informática, las aplicaciones permitían registrar tareas o acciones mediante macrocomandos. El término macro ha quedado para indicar que un programa diseñado por un usuario realizará acciones.

VBA es la contracción de Visual Basic para aplicaciones. En Office (y no sólo en Excel), el lenguaje de programación utilizado es Visual Basic. Sin embargo, los términos utilizados por Excel (celdas, hoja de cálculo, rango de datos, etc.) son específicos de Excel. En Access o Word, estos términos no significan nada.

Entonces, la A en VBA significa que trabajará con palabras clave específicas de Excel.

Comprender un programa en VBA

El editor de Visual Basic

Las macros de VBA se escriben en el Editor de Visual Basic. Para abrirlo simplemente presione las teclas Alt + F11

Descripción general del editor de Visual Basic

El editor de macros se abre en un programa independiente.

Escribir código en procedimientos.

Para ejecutarse una macro debe estar escrita en un procedimiento (subrutina en inglés con el diminutivo Sub)

Sub MonProgramme()
   Votre code ...
End Sub

¿Cómo se codifica una celda?

Una celda se codifica de la siguiente manera

Cells(numéro ligne, numéro colonne)

A diferencia de un referencia de celda en Excel (A5, B10), en VBA, primero se escribe la fila y luego la columna.

Pero también es posible codificar una celda o un rango de celdas con referencias "duras" (que nunca se moverá) me gusta

  • Range("A1")
  • y Range("B6:AF13") al final del código para indicar que el programa funcionará en las celdas entre B6 y AF13

¿Qué es una variable?

Una variable es un elemento del código que verá cambiar su valor. Además, una variable debe respetar un cierto tipo de datos para preservar la integridad de un programa. No puedes agregar números con texto, por ejemplo.

En el caso de calendario automático, reemplazaremos el parámetro de columna de una celda con una variable. Como resultado, será posible recorrer las celdas que contienen los días 29, 30 y 31 con la misma línea de código.

¿Qué es un bucle?

En informática, un bucle corresponde a la repetición de una misma acción hasta alcanzar un valor o una condición para detener la secuencia. Por ejemplo, con el siguiente código repetiremos la acción de poner un valor en las celdas de A10 a A1 10 veces

For i = 1 To 10
   Cells(i, 1) = i
Next

¿Qué es una prueba en un programa de computadora?

Una prueba en un programa es lo mismo que para el Función SI en Excel. A prueba lógica se realiza entre 2 elementos y dependiendo del resultado (Verdadero o Falso) se realiza una conexión con la prueba Real o a la prueba Faux.

Por ejemplo, el siguiente código prueba el contenido de la celda D5 y muestra un mensaje en consecuencia.

If Cells(5, 4) = 8 Then
   MsgBox "La cellule D5 contient la valeur 8"
Else
   MsgBox "La cellule D5 est différente de 8"
End if

Cómo depurar un programa VBA

Si tiene dificultades para encontrar el origen de sus errores en VBA, esta guía le explicará cómo utilizar el depurador.

Artículos relacionados

3 Comentarios

  1. JEAN LUC BOSCHER
    15/03/2024 a las 10:46

    Bonjour,
    Creé un sistema de gestión de producción con hojas de producción, seguimiento de producción con macros. Pero mi libro de Excel ha tardado mucho en ejecutar macros por un tiempo y durante la ejecución me marca en la parte superior izquierda ¡Excel no responde!

    ¿Alguien tiene una explicación para mi problema y sobre todo cómo solucionarlo? .
    Estoy usando Excel 2019 Home Edition

    Gracias de antemano

    Juan Lucas

    Responder

  2. DJELLOULI
    08/02/2022 a las 17:47

    Hola, soy contador y me gustaría aprender cómo funciona una fórmula macro en una tabla de depreciación de Excel.
    Cordialement.

    Responder

    • No
      23/07/2023 a las 21:06

      Aquí hay un ejemplo de programación simple:
      Sub btnCalcularEMI_Click()
      Dim tasa_mensual como simple, monto_del_préstamo como doble, número_de_periodos como simple, emi como doble

      tasa_mensual = Rango("B6").Valor / Rango("B5").Valor 'tasa de interés / número de pagos por año

      monto_préstamo = Rango("B3").Valor 'monto del préstamo

      número_de_periodos = Rango("B4").Valor * Rango("B5").Valor 'plazo del préstamo * número de pagos por año

      emi = WorksheetFunction.Pmt(tasa_mensual, número_de_períodos, -monto_préstamo)

      Rango("B9").Valor = emi
      End Sub

      Responder

Dejar un comentario

Su dirección de correo electrónico no será publicada. Los campos necesarios están marcados con *

Este sitio usa Akismet para reducir los no deseados. Obtenga más información sobre cómo se procesan sus datos de comentarios.

Jugador Más Valioso de Microsoft 2024

Boletín informativo

1 vez al mes:
Consejos y cuestionarios

    No te enviaremos spam. Puedes darte de baja en cualquier momento.

    Comprender las macros de VBA

    Tiempo de leer: 3 minutos
    Última actualización el 08/10/2024

    En Excel, puedes diseñar programas informáticos reales utilizando Macros VBA.

    Todos los programas de computadora se construyen de la misma manera.

    • variables (para almacenar valores intermedios)
    • Pruebas para comparar 2 elementos o 2 valores.
    • y finalmente bucles para realizar repeticiones de ejecución.

    ¿Macros o VBA?

    Los términos son equivalentes hoy. Una búsqueda en Internet con uno u otro de estos términos le remitirá sistemáticamente a líneas de código.

    En el origen de la informática, las aplicaciones permitían registrar tareas o acciones mediante macrocomandos. El término macro ha quedado para indicar que un programa diseñado por un usuario realizará acciones.

    VBA es la contracción de Visual Basic para aplicaciones. En Office (y no sólo en Excel), el lenguaje de programación utilizado es Visual Basic. Sin embargo, los términos utilizados por Excel (celdas, hoja de cálculo, rango de datos, etc.) son específicos de Excel. En Access o Word, estos términos no significan nada.

    Entonces, la A en VBA significa que trabajará con palabras clave específicas de Excel.

    Comprender un programa en VBA

    El editor de Visual Basic

    Las macros de VBA se escriben en el Editor de Visual Basic. Para abrirlo simplemente presione las teclas Alt + F11

    Descripción general del editor de Visual Basic

    El editor de macros se abre en un programa independiente.

    Escribir código en procedimientos.

    Para ejecutarse una macro debe estar escrita en un procedimiento (subrutina en inglés con el diminutivo Sub)

    Sub MonProgramme()
       Votre code ...
    End Sub

    ¿Cómo se codifica una celda?

    Una celda se codifica de la siguiente manera

    Cells(numéro ligne, numéro colonne)

    A diferencia de un referencia de celda en Excel (A5, B10), en VBA, primero se escribe la fila y luego la columna.

    Pero también es posible codificar una celda o un rango de celdas con referencias "duras" (que nunca se moverá) me gusta

    • Range("A1")
    • y Range("B6:AF13") al final del código para indicar que el programa funcionará en las celdas entre B6 y AF13

    ¿Qué es una variable?

    Una variable es un elemento del código que verá cambiar su valor. Además, una variable debe respetar un cierto tipo de datos para preservar la integridad de un programa. No puedes agregar números con texto, por ejemplo.

    En el caso de calendario automático, reemplazaremos el parámetro de columna de una celda con una variable. Como resultado, será posible recorrer las celdas que contienen los días 29, 30 y 31 con la misma línea de código.

    ¿Qué es un bucle?

    En informática, un bucle corresponde a la repetición de una misma acción hasta alcanzar un valor o una condición para detener la secuencia. Por ejemplo, con el siguiente código repetiremos la acción de poner un valor en las celdas de A10 a A1 10 veces

    For i = 1 To 10
       Cells(i, 1) = i
    Next

    ¿Qué es una prueba en un programa de computadora?

    Una prueba en un programa es lo mismo que para el Función SI en Excel. A prueba lógica se realiza entre 2 elementos y dependiendo del resultado (Verdadero o Falso) se realiza una conexión con la prueba Real o a la prueba Faux.

    Por ejemplo, el siguiente código prueba el contenido de la celda D5 y muestra un mensaje en consecuencia.

    If Cells(5, 4) = 8 Then
       MsgBox "La cellule D5 contient la valeur 8"
    Else
       MsgBox "La cellule D5 est différente de 8"
    End if

    Cómo depurar un programa VBA

    Si tiene dificultades para encontrar el origen de sus errores en VBA, esta guía le explicará cómo utilizar el depurador.

    Artículos relacionados

    Boletín informativo

    1 vez al mes:
    Consejos y cuestionarios

      No te enviaremos spam. Puedes darte de baja en cualquier momento.

      3 Comentarios

      1. JEAN LUC BOSCHER
        15/03/2024 a las 10:46

        Bonjour,
        Creé un sistema de gestión de producción con hojas de producción, seguimiento de producción con macros. Pero mi libro de Excel ha tardado mucho en ejecutar macros por un tiempo y durante la ejecución me marca en la parte superior izquierda ¡Excel no responde!

        ¿Alguien tiene una explicación para mi problema y sobre todo cómo solucionarlo? .
        Estoy usando Excel 2019 Home Edition

        Gracias de antemano

        Juan Lucas

        Responder

      2. DJELLOULI
        08/02/2022 a las 17:47

        Hola, soy contador y me gustaría aprender cómo funciona una fórmula macro en una tabla de depreciación de Excel.
        Cordialement.

        Responder

        • No
          23/07/2023 a las 21:06

          Aquí hay un ejemplo de programación simple:
          Sub btnCalcularEMI_Click()
          Dim tasa_mensual como simple, monto_del_préstamo como doble, número_de_periodos como simple, emi como doble

          tasa_mensual = Rango("B6").Valor / Rango("B5").Valor 'tasa de interés / número de pagos por año

          monto_préstamo = Rango("B3").Valor 'monto del préstamo

          número_de_periodos = Rango("B4").Valor * Rango("B5").Valor 'plazo del préstamo * número de pagos por año

          emi = WorksheetFunction.Pmt(tasa_mensual, número_de_períodos, -monto_préstamo)

          Rango("B9").Valor = emi
          End Sub

          Responder

      Dejar un comentario

      Su dirección de correo electrónico no será publicada. Los campos necesarios están marcados con *

      Este sitio usa Akismet para reducir los no deseados. Obtenga más información sobre cómo se procesan sus datos de comentarios.