Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
Referencias relativas macros

Grabar macros con referencias relativas

| 1 Comment

Cuando se trabaja con la grabadora de macros, se tiene la opción de activar el botón “referencias relativas” . Este botón nos es de gran utilidad ya que nos ayuda automatizar tareas repetitivas en una hoja en donde hay datos que deben estar distribuidos de manera determinada y estándar, es decir, que no varíen.

De esta manera se puede utilizar una macro para simplificar tareas que pueden resultar rutinarias.

Por ejemplo:

Tarea3 foto1

Aquí tenemos una relación de los meses del año, se introdujeron los datos grabando la macro “meses del año”. Luego, cuando se intenta correr la macro en otra celda, digamos D1:

tarea3 problema

Como se puede apreciar, luego de ejecutar la macro, la relación de meses empieza en D1, pero los otros meses desde “Febrero” siguen de la celda A2. Observando la sintaxis que tuvimos en la grabadora de macros vemos que esto sucede ya que en la programación para los meses desde “Febrero” hasta “Diciembre” están programados para aparecer en las celdas que se ubican abajo de A1, que fue la “ActiveCell” en donde se escribió el primer dato, “Enero”.

tarea3 visualbasicAhora, realizamos la grabación del macro activando el botón “referencias relativas” . La sintaxis con el botón activado fue la siguiente:

Sub Meses()

‘ Meses Macro


ActiveCell.Offset.Range(“A1”).Select
ActiveCell.FormulaR1C1 = “Enero “
ActiveCell.Offset(1, 0).Range(“A1”).Select
ActiveCell.FormulaR1C1 = “Febrero”
ActiveCell.Offset(1, 0).Range(“A1”).Select
ActiveCell.FormulaR1C1 = “Marzo”

Endsub

El código “ActiveCell.Offset” indica que no importa dónde se coloque el cursor para activar la celda, todos los datos se ingresarán de manera completa. Como se puede apreciar aquí:

tarea3fotofinal

 

Esta es la utilidad del botón “referencias relativas” con un sencillo ejemplo, pero también puede ser de utilidad para bases de datos más grandes, así nos ayudará mucho a automatizar procesos.

Adjunto el archivo  Grabar-Macros-Referencia-Relativa

 

 

One Comment

  1. Por ejemplo si se tiene en una hoja varias tablas con datos y queremos aplicarle un formato determinado (de colores, tamaño, etc) a todas las tablas (encabezado y contenido) utilizando solo la macro, sería de esta manera:

    Para el encabezado:

    1. Grabar macro
    2. Se hace clic a cualquier celda que está contenida de esa primera tabla.
    3. Luego, Control + flecha hacia arriba
    4. Control + flecha hacia la izquierda
    5. Control + Shift + fleja hacia la derecha
    6. A continuación se le aplica los formatos que queremos a la tabla (color, tipo de letra, tamaño de fila o columna, etc)

    Para el resto de la tabla (contenido)

    7. Hacer click en el boton “Usar referencias relativas” que se encuentra en la ficha Programador
    8. Presionamos Flecha hacia abajo (que es el inicio del contenido de la tabla)
    9. De nuevo hacemos click en el boton “Usar referencias relativas” para desactivarlo
    10. Seleccionar toda la tabla de contenido con Control + Shift + Flecha hacia la derecha y luego con Flecha hacia abajo
    11. De igual manera aplicamos los formatos que queremos
    12. Ahora Detener grabación
    13. Finalmente ejecutaremos la macro en las otras tablas y notaremos que automáticamente todas las tablas tienen el mismo formato que la primera tabla donde se grabó la macro.

Deja un comentario

Required fields are marked *.


Excel Avanzado located at , Lima, Perú . Reviewed by usuarios rated: 4.7 / 5