Jump to content

Insertar referencia a tabla en celda con vba


Go to solution Solved by JasallBcn,

Recommended Posts

Buenas tardes, quisiera que cuando ejecuto una macro esta me escriba en una celda el nombre de una tabla para que la muestre en esa celda. Es decir,

si tengo una tabla que va de "A1:B2" llamada TABLA. Si yo escribo de forma manual en la celda C5: "=TABLA", se me muestra la tabla. 

Pues bien, yo quiero poder hacer esto con VBA. Es decir, que la celda C5 esté vacía pero al ejecutar una macro se escriba en C5: "=TABLA" para que ahí se me muestre la tabla. El problema es que cuando intento hacerlo, en lugar de en C5 escribirse "=TABLA" se me escribe "@TABLA" y no sé cómo poder solucionarlo.

Tengo esta línea de código:

Sheets("Hoja").Range("C5") = "=TABLA"

No sé si tiene que ver el error de que la tabla está puesta en otra hoja.

 

Este es un ejemplo sencillo de lo que quiero lograr, ya que lo que estoy haciendo es más complejo, pero con resolver esto me serviría.

Muchas gracias.

 

Link to comment
Share on other sites

hace 14 horas, JasallBcn dijo:

Buenas, Prueba :

Sheets("Hoja").Range("C5").Formula2 = "=TABLA"

Saludos

Genial, ¡me ha servido bastante!

Muchas gracias!

Si quisiera introducir un if()  cómo se podría implementar?

he probado con

sheets(“Hoja”).Range(“C5”).Formula2 = “if(TABLA=“”, “”, TABLA)

ya que quiero que si hay valores vacíos en la tabla no se me muestren. De forma normal funciona, pero metiendo esta fórmula para que la inserte en la celda con vba me salta error. ¿Cómo podría solucionarlo?

Link to comment
Share on other sites

  • Solution
hace 9 horas, 96andres96 dijo:

Genial, ¡me ha servido bastante!

Muchas gracias!

Si quisiera introducir un if()  cómo se podría implementar?

he probado con

sheets(“Hoja”).Range(“C5”).Formula2 = “if(TABLA=“”, “”, TABLA)

ya que quiero que si hay valores vacíos en la tabla no se me muestren. De forma normal funciona, pero metiendo esta fórmula para que la inserte en la celda con vba me salta error. ¿Cómo podría solucionarlo?

Te falta el "=" y encerrar las dobles comillas  entre comillas.

Sheets("Hoja").Range("C5").Formula2 = "=IF(Tabla="""","""",Tabla)"

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

Privacy Policy