Jump to content

Copiar el valor de una celda en otra al seleccionarla


bomec

Recommended Posts

Estimados amigos:

¿Alguien podría indicarme si hay algún modo de mostrar/copiar el valor de una celda en otra con solo hacer clic en la primera?

Me explico. Imaginemos que tengo los siguientes valores en las siguientes celdas:

A1 = 1

A2 = 2

A3 = 3

A4 = vacía

Me gustaría que al hacer clic en las celdas A1, A2 o A3, en la celda A4 se mostrara automáticamente en valor de la celda seleccionada (1, 2 o 3 según el caso).

Con mi agradecimiento por adelantado.

Link to post
Share on other sites

Muchas gracias, Silvana. La solución es estupenda y muy sencilla. Entiendo la macro sin problema y funciona muy bien. Solo una pequeña pregunta adicional por si a ti o a alguien se le ocurre un modo de ajustar esa macro a una particularidad. ¿Existiría algún modo de limitar el rango de celdas que debe tener en cuenta para funcionar? Es decir, siguiendo con mi ejemplo: ¿podríamos decirle que en la celda A4 solo muestre el contenido de las celdas del rango A1 a A3, pero si nos ponemos en cualquier otra no muestre nada?

Gracias por adelantado.

Link to post
Share on other sites

Bomec

yo no se hacer códigos, tengo una idea... y para hacer lo que hice, me guié de lo que te envié.

con esto me sale lo que requieres.. obviamente alguien más, podría darte una mejor solución..

saludos,

Silvia

cambia el anterior código, por este..

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveCell = Range("A1") Then Range("A4") = Range("A1")
If ActiveCell = Range("A2") Then Range("A4") = Range("A2")
If ActiveCell = Range("A 3") Then Range("A4") = Range("A3")

End Sub
[/CODE]

Link to post
Share on other sites

Muchas gracias tanto a Diego PC como a Silvana.

La solución de Silvana lamentablemente no me funciona: se produce un error de compilación.

La de DiegoPC funciona muy bien y creo que es la que voy a utilizar, aunque tiene (para mi caso) un pequeño problema: al contener la celda A9 una fórmula, si yo quisiera introducir un valor directamente en ella (no seleccionando otra celda) se borraría y dejaría de funcionar. De todos modos, creo que le sacaré partido. ;)

Muchas gracias nuevamente a ambos. Un lujo contar con vuestra ayuda.

Link to post
Share on other sites

en mi caso, en esta línea

If ActiveCell = Range("A 3") Then Range("A4") = Range("A3")

No sé como se ha puesto un espacio en A3, lo quitas y debe funcionar...

No obstante, esta forma en caso sean muchas celdas.. es muy primitiva.. :mad:

Hola

Target.Address se refiere a la dirección (A1, A2, A3, etc) de la celda que el usuario seleccionó en la hoja.

Si pero esta vinculada al rango nombrado, ya lo entendí.. :D , estaba dando vueltas, porque no sabía como hacías referencia a un rango en particular...

Gracias.. ;);)

Link to post
Share on other sites

Sí, efectivamente, ese era el problema, Silvana, gracias. De todos modos, como tú misma dices, la fórmula no es muy eficaz si son muchas las celdas. Y así es: en mi caso, puede ser unas 1000... :mad: Lo ideal sería poder modificar la macro de Ioyama para que restringiera el rango de celdas seleccionables a las que yo necesitara.

Seguiré investigando. Si no, la solución de DiegoPC me servirá sin duda.

Link to post
Share on other sites

Archived

This topic is now archived and is closed to further replies.

Guest
This topic is now closed to further replies.


×
×
  • Create New...

Important Information

Privacy Policy