¿Offset cómo se utiliza?

Quisiera conocer que es y como se utiliza la función offset ya que creo tener que utilizarla en un proyecto de una hoja de excel, así que se por favor me pueden ayudar de antemano

2 Respuestas

Respuesta
6
El offset, cumple en una macro la misma función que puedes hacer con las flechas del teclado o sea avanzar, retroceder, ir a inicio o al final, todo lo mismo que hacemos en el teclado, solo que plasmado en una macro.
Ejemplos:
ActiveCell.Offset(1, 0).Select   ' Avanza una fila
ActiveCell.Offset(0, 2).Select  ' Avanza dos columas
ActiveCell.Offset(0, -1).Select  ' Retrocede 1 columna
Ademas algo similar:
Selection.End(xlDown).Select    'Avanza al final de la columna segun los datos que tenga
Selection.End(xlToRight).Select  ' Avanza al final derecho de los datos en una linea
Selection.End(xlUp).Select
Selection.End(xlToLeft).Select
Gracias me sirvió mucho pero en un código encontré estas lineas y no las logro entender...
  ActiveCell.Offset(-2, 48).Range("A1:G4").Select
  Selection.Copy
  ActiveCell.Offset(0, -9).Range("A1").Select
  ActiveSheet.PasteSpecial Format:=3, Link:=1, DisplayAsIcon:=False, _
  IconFileName:=False

Si me podrías ayudar de nuevo por favor de antemano te lo agradezco muchísimo...
La verdad es que no tengo muy claro para que se esta utilizando el código, lo probé y realiza un movimiento, pero lo que entiendo es que copy el rango una vez movido las filas y columnas respectivas, pero como no tengo los datos no me queda claro que están haciendo.
En la linea
ActiveCell.Offset(-2, 48).Range("A1:G4").Select
Entiendo que de la celda activa subirá 2 filas y avanzara 48 columnas, pero lo que no entiendo es lo que esta subrayado, es lo que no entiendo... gracias por tu paciencia y de antemano gracias.
La verdad es que yo tampoco entiendo porque lo usaron, me da la impresión que ocupan ese rango como tamaño de un rango que necesitan, porque si tu pruebas la macro en una hoja limpia, lo que hace es moverse las filas y columnas que dice la instrucción y dejar marcado el tamaño del rango, pero en la nueva posición. Pruébalo sin ese parte de la instrucción y ve si te funciona.
Tienes que probar alternativas y veras que se puede.
Suerte
Muchas gracias me ayudaste y aclaraste dudas del Selection.end que también traía... y honesto por que me dijiste que más o menos entendías el rango que usa.. ja je.. gracias
Respuesta

Estoy en igual forma, aprendiendo, muchas gracias y feliz año 2020

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas