¿Como se vinculan celdas en macros?

Tengo una hoja de excel, en la que tengo varias pestañas, hoja1, dónde se encuentran unos datos que tengo que introducir en otras hojas, Hoja2 y Hoja3.

Desde una macro, lo que hago es que se introducen los datos en la Hoja2 y la Hoja3 (que vienen de la Hoja1), hasta ahí no tengo problema. Una vez copiados los datos, luego tengo que hacer que desde la hoja 2, algunas celdas están vinculadas a las celdas de la hoja3, de forma que cuando se introduzcan datos en la Hoja 3, se cambien automáticamente en la Hoja2.

Al principio no tenía problema, porque lo que hacía es que para introducir los datos en hoja2 y hoja3, insertaba una fila al inicio, de forma que se encontraban en la misma fila y la misma columna, y la fórmula que tenía era la siguiente:

Range("S10").Select
ActiveCell.FormulaR1C1 = "=Hoja3!RC"

Pero al ir creciendo el fichero, hace que la se retrase mucho la creación de la filas, por lo que he inicado una nueva macro, para introducirlo al final del documento. El problema lo tengo porque no sé como hacer referencia en la dos hojas a dos filas diferentes. He intentando usar la siguiente fórmula:

ActiveSheet.Cells(ultlineatot, 19) = "=Hoja3!R[-dif]C[19]"

Dónde ultlineatot = fila dónde insertar la linea en Hoja2

dif = la diferencia entre las filas Hoja2 y Hoja3.

Pero esta fórmula da un error, supongo porque con RC hay que indicar un número, ¿cómo podría solventarlo?

1 Respuesta

Respuesta
1

Cuando tienes una fórmula con variables debes ir dejando entre comillas las partes fijas uniendo con & las variables.

En tu caso:

ActiveSheet.Cells(ultlineatot, 19) = "=Hoja3!R[-" & dif & "]C[19]"

Te recuerdo que RC hacen referencia a partir de la celda activa.

Te recuerdo que la consulta sigue abierta... Si el tema quedó resuelto no olvides valorar esta respuesta.

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas