Cómo grabar macros en el modo relativo y el modo absoluto en excel 2016

Al grabar sus acciones, Excel normalmente se registra referencias absolutas a las células. (Este es el modo de grabación por defecto.) Sin embargo, muy a menudo, esto es el incorrecto Modo grabación. Si utiliza el modo de grabación absoluta, Excel registra las referencias de celdas reales. Si utiliza la grabación relativa, los registros de Excel relativo las referencias a las células. Sigue leyendo para ver la diferencia.

La grabación en el modo absoluto

Siga estos pasos para grabar una macro sencilla en modo absoluto. Esta macro sólo tiene que introducir tres nombres de los meses en una hoja de cálculo:

  1. Asegúrese de que el desarrollador → Código → Utilice el botón referencias relativas se no resaltado y luego elegir desarrollador → Código → Grabar macro.

  2. Tipo Absoluto como el nombre de esta macro.

  3. Haga clic en Aceptar para comenzar la grabación.

  4. Activar la celda B1 y escriba Jan en esa celda.

  5. Mover a la celda C1, y escriba febrero

  6. Acceder a la celda D1 y escriba marzo

  7. Haga clic en la celda B1 para activarlo de nuevo.

  8. Detener la grabadora de macros.

  9. Presione Alt + F11 para activar el VBE.

  10. Examine el módulo Module1.

    Excel genera el siguiente código:

    Sub absoluto () `` Absolute Macro`Range ( “B1”). SelectActiveCell.FormulaR1C1 = “Jan” Range ( “C1”). SelectActiveCell.FormulaR1C1 = “febrero” Range ( “D1”). SelectActiveCell.FormulaR1C1 = “Mar “Range (‘B1’). SelectEnd Sub

    Cuando se ejecuta, esta macro selecciona la celda B1 e inserta los tres nombres de los meses en el rango B1: D1. A continuación, la macro reactiva célula B1.

Estas mismas acciones se producen independientemente de qué celda está activa cuando se ejecuta la macro. Una macro grabada mediante el uso de referencias absolutas siempre produce los mismos resultados cuando se ejecuta. En este caso, la macro siempre entra en los nombres de los tres primeros meses en el rango B1: D1 en la hoja de cálculo activa.

La grabación en modo relativo

En algunos casos, usted quiere que su macro grabada para trabajar con las ubicaciones de celda en una relativo manera. Es posible que desee la macro para comenzar a introducir los nombres de los meses en la celda activa. En tal caso, es necesario utilizar la grabación relativa.

Puede cambiar la forma en que Excel registra sus acciones haciendo clic en el botón Usar referencias relativas en el grupo Código de la ficha Programador. Este botón es un botón de activación. Cuando el botón aparece resaltado en un color diferente, el modo de grabación es relativo. Cuando el botón aparece normalmente, está grabando en modo absoluto.

Se puede cambiar el método de grabación en cualquier momento, incluso en el medio de grabación.

Para ver cómo funciona relativa modo de grabación, borrar el contenido del rango B1: D1 y luego realizar los siguientes pasos:

Activar la celda B1.

  • Elija desarrollador → Código → Grabar macro.

  • Nombre esta macro relativa.

  • Haga clic en Aceptar para comenzar la grabación.

  • Haga clic en el botón Usar referencias relativas a cambiar el modo de grabación relativa.

    Al hacer clic en este botón, cambia a un color diferente del resto de la cinta.

  • Ene escribir en la celda B1.

  • Mover a la celda C1, y escriba febrero

  • Acceder a la celda D1 y escriba marzo

  • Seleccione la celda B1.

  • Detener la grabadora de macros.

  • Tenga en cuenta que este procedimiento es ligeramente diferente del ejemplo anterior. En este ejemplo, se activa la célula comienza antes de se inicia la grabación. Este es un paso importante al grabar macros que utilizan la celda activa como base.

    Esta macro siempre se inicia la introducción de texto en la celda activa. Intentalo. Mover el puntero de celda a una celda y luego ejecutar la macro relativa. Los nombres de los meses se introducen siempre comenzando en la celda activa.

    Con el modo de grabación se establece en relativo, el código que genera Excel es bastante diferente del código generado en modo absoluto:

    Sub relativa () `` relativa Macro`ActiveCell.FormulaR1C1 = “Jan” ActiveCell.Offset (0, 1) .Range ( “A1”). SelectActiveCell.FormulaR1C1 = “febrero” ActiveCell.Offset (0, 1) .Range ( “A1”). SelectActiveCell.FormulaR1C1 = “Mar” ActiveCell.Offset (0, -2) .Range ( “A1”). SelectEnd Sub

    Para probar esta macro, active cualquier célula, excepto B1. Los nombres de los meses se introducen en tres células, a partir de la célula que se ha activado.

    Observe que el código generado por la grabadora de macros se refiere a la celda A1. Esto puede parecer extraño, porque nunca se usó la celda A1 durante la grabación de la macro. Esto es simplemente un subproducto de la forma en que funciona la grabadora de macros.

    Artículos Relacionados